/**
 * MCKEE INTERNATIONAL (MI) SKIN
 * Canonical Master Stylesheet
 *
 * Version: 2.4.0
 * Includes:
 * - MI tokens
 * - Form 9 engine: visibility, spacing, inputs, progress, microtoast, nav buttons
 * - MI Form Shell skin (graphite glass, champagne glow, diagonal sheen)
 * - Elementor tab bar skin (scoped to .ef-form-shell)
 * - Woo checkout skin
 * - CSE skin
 * - Account menu
 * - Tooltip
 * - Canonical Options tab system
 *
 * Notes:
 * - Global atmosphere and site-wide wrapper transparency belong in the separate global stylesheet.
 * - Template picker styles have been extracted to a dedicated stylesheet.
 * - This file is safe to enqueue from the plugin because it is scoped to .ef-form-shell and #frm_form_9_container where appropriate.
 * - Payment tab uses checkout-mode footer behavior:
 *   - Back visible
 *   - Next hidden
 *   - Sticky total hidden
 */

/* =========================================================
   0) MI TOKENS
========================================================= */
:root{
  --mi-bg:#06090f;

  --mi-ink:rgba(255,255,255,.92);
  --mi-muted:rgba(255,255,255,.68);
  --mi-muted2:rgba(255,255,255,.55);

  --mi-gold1:#fff2c6;
  --mi-gold2:#d8bf7a;
  --mi-accent:#c2a96a;
  --mi-bronze:#9a814a;

  --mi-line:rgba(255,242,198,.14);
  --mi-line2:rgba(255,242,198,.22);

  --mi-glassTop:rgba(255,255,255,.075);
  --mi-glassBot:rgba(255,255,255,.03);

  --mi-fieldTop:rgba(255,255,255,.055);
  --mi-fieldBot:rgba(255,255,255,.018);
  --mi-fieldBorder:rgba(255,255,255,.12);

  --mi-shadow:0 22px 70px rgba(0,0,0,.55);
  --mi-shadow2:0 14px 45px rgba(0,0,0,.35);

  --mi-radius:18px;
  --mi-radiusSm:10px;

  --mi-btnGrad:linear-gradient(135deg,#c2a96a 0%,#9a814a 100%);
}

/* =========================================================
   0.5) UI SCALE SYSTEM
========================================================= */
:root{ --ui-scale:0.86; }

html[data-ui="comfortable"]{ --ui-scale:1; }
html[data-ui="compact"]{ --ui-scale:0.86; }
html[data-ui="ultra"]{ --ui-scale:0.76; }

#frm_form_9_container[data-ui="comfortable"]{ --ui-scale:1; }
#frm_form_9_container[data-ui="compact"]{ --ui-scale:0.86; }
#frm_form_9_container[data-ui="ultra"]{ --ui-scale:0.76; }

#frm_form_9_container{
  --ff-maxw: calc(1100px * var(--ui-scale));
  --ff-padY: calc(14px * var(--ui-scale));
  --ff-padX: calc(18px * var(--ui-scale));
  --ff-fieldGap: calc(7px * var(--ui-scale));
  --ff-labelGap: calc(2px * var(--ui-scale));
  --ff-inputH: calc(36px * var(--ui-scale));
  --ff-inputPadY: calc(5px * var(--ui-scale));
  --ff-inputPadX: calc(10px * var(--ui-scale));
  --ff-labelSize: calc(12px * var(--ui-scale));
  --ff-bodySize: calc(13px * var(--ui-scale));
  --ff-radius: calc(10px * (0.94 + (var(--ui-scale) * 0.06)));
}

/* =========================================================
   1) MI FORM SHELL
========================================================= */
.ef-form-shell{
  position:relative;
  isolation:isolate;
  min-height:100vh;
  background:transparent !important;

  --mi-bg:#070a10;

  --mi-ink:rgba(255,255,255,.90);
  --mi-muted:rgba(255,255,255,.64);
  --mi-muted2:rgba(255,255,255,.52);

  --mi-gold1:rgba(255,242,198,.92);
  --mi-gold2:rgba(216,191,122,.72);

  --mi-line:rgba(255,255,255,.10);
  --mi-line2:rgba(255,255,255,.07);

  --mi-glassTop:rgba(255,255,255,.06);
  --mi-glassBot:rgba(255,255,255,.022);

  --mi-fieldTop:rgba(255,255,255,.055);
  --mi-fieldBot:rgba(255,255,255,.018);
  --mi-fieldBorder:rgba(255,255,255,.12);

  --mi-shadow:0 26px 80px rgba(0,0,0,.62);
  --mi-shadow2:0 14px 44px rgba(0,0,0,.38);

  --mi-radius:18px;
  --mi-radiusSm:10px;
}

.ef-form-shell > *{
  position:relative;
  z-index:2;
}

.ef-form-shell::before,
.ef-form-shell::after{
  content:none !important;
  display:none !important;
}

/* =========================================================
   2) FORM 9: CORE VISIBILITY & TAB FILTERING
========================================================= */
#frm_form_9_container{
  visibility:hidden;
  color:var(--mi-ink);
  max-width:var(--ff-maxw);
  margin:0 auto;
  font-size:var(--ff-bodySize);
}

#frm_form_9_container.ff-js-ready{
  visibility:visible !important;
}

.frm_form_field.ff-tab-hide{
  display:none !important;
}

#frm_form_9_container .frm_form_field.ff-tab-hide{
  display:none !important;
}

#frm_form_9_container label,
#frm_form_9_container .frm_primary_label,
#frm_form_9_container .frm_description,
#frm_form_9_container .frm_message{
  color:var(--mi-ink);
}

#frm_form_9_container .frm_primary_label{
  font-size:var(--ff-labelSize);
  letter-spacing:.15px;
}

/* =========================================================
   3) MI PANEL LOOK + DIAGONAL SHEEN
========================================================= */
.ef-form-shell #frm_form_9_container{
  position:relative;
  border-radius:var(--mi-radius);
}

.ef-form-shell #frm_form_9_container form{
  position:relative;
  border-radius:var(--mi-radius);
  background:linear-gradient(180deg,var(--mi-glassTop) 0%,var(--mi-glassBot) 100%);
  border:1px solid var(--mi-line);
  box-shadow:var(--mi-shadow);
  overflow:hidden;
  margin-top:0;
  margin-bottom:0;
}

.ef-form-shell #frm_form_9_container form::before{
  content:"";
  position:absolute;
  inset:6px;
  border-radius:calc(var(--mi-radius) - 6px);
  border:1px solid var(--mi-line2);
  pointer-events:none;
}

.ef-form-shell #frm_form_9_container form::after{
  content:"";
  position:absolute;
  inset:-20% -10%;
  background:linear-gradient(
    110deg,
    transparent 0%,
    transparent 58%,
    rgba(255,255,255,.075) 62%,
    rgba(255,255,255,.038) 70%,
    transparent 78%,
    transparent 100%
  );
  opacity:.55;
  pointer-events:none;
}

/* =========================================================
   4) FORM 9: CHROME AUTOFILL SHIELD
========================================================= */
#frm_form_9_container input:-webkit-autofill,
#frm_form_9_container input:-webkit-autofill:hover,
#frm_form_9_container input:-webkit-autofill:focus,
#frm_form_9_container textarea:-webkit-autofill,
#frm_form_9_container textarea:-webkit-autofill:hover,
#frm_form_9_container textarea:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--mi-ink) !important;
  -webkit-box-shadow:0 0 0 1000px #0d1117 inset !important;
  box-shadow:0 0 0 1000px #0d1117 inset !important;
  transition:background-color 5000000s ease-in-out 0s;
  caret-color:var(--mi-ink) !important;
}

/* =========================================================
   5) FORM 9: FIELD AREA PADDING + DENSITY
========================================================= */
#frm_form_9_container .frm_form_fields{
  padding:var(--ff-padY) var(--ff-padX) !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

#frm_form_9_container .frm_fields_container{
  display:flex;
  flex-direction:column;
  gap:0;
}

#frm_form_9_container .frm_form_field{
  margin-bottom:var(--ff-fieldGap) !important;
}

#frm_form_9_container .frm_form_field:not(.frm6_section):not(.frm_html_container):not(.frm_submit){
  margin-bottom:var(--ff-fieldGap) !important;
}

#frm_form_9_container .frm_form_field > label,
#frm_form_9_container .frm_primary_label{
  display:block !important;
  margin-bottom:var(--ff-labelGap) !important;
  line-height:1.05 !important;
}

#frm_form_9_container .frm_form_field .frm_input_container,
#frm_form_9_container .frm_form_field .frm_required{
  margin-top:0 !important;
  padding-top:0 !important;
}

#frm_form_9_container .frm_description,
#frm_form_9_container .frm_description p,
#frm_form_9_container .description{
  margin-top:1px !important;
  margin-bottom:0 !important;
  line-height:1.08 !important;
}

/* Target rows that were visually floaty */
#frm_field_486_container,
#frm_field_487_container,
#frm_field_511_container,
#frm_field_512_container,
#frm_field_320_container,
#frm_field_330_container{
  margin-bottom:4px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}

#frm_field_486_container > label,
#frm_field_487_container > label,
#frm_field_511_container > label,
#frm_field_512_container > label,
#frm_field_320_container > label,
#frm_field_330_container > label{
  margin-bottom:1px !important;
}

/* Section, option, and HTML rhythm */
#frm_form_9_container .frm_section_spacing,
#frm_form_9_container .frm6_section,
#frm_form_9_container .frm_form_field.frm6_section,
#frm_form_9_container .frm_form_field.frm_section_spacing,
#frm_form_9_container .frm_top_container{
  margin-top:0 !important;
  margin-bottom:3px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  min-height:0 !important;
}

#frm_form_9_container .frm_html_container p,
#frm_form_9_container .frm_form_field p{
  margin:3px 0 !important;
  line-height:1.14 !important;
}

/* =========================================================
   6) FORM 9: EMBEDDED FOOTER NAV KILL + HIDDEN SYSTEM FIELDS
========================================================= */
#frm_form_9_container #ff-absolute-footer,
#frm_form_9_container #ff-absolute-footer *{
  display:none !important;
}

#frm_form_9_container .ff-prev-tab,
#frm_form_9_container .ff-next-tab,
#frm_form_9_container .ff-save-draft-trigger,
#frm_form_9_container .ff-resume-trigger{
  display:none !important;
}

#frm_form_9_container .frm_save_draft{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
}

#frm_form_9_container .ff-always-on,
#frm_form_9_container .ff-always-on input{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Preserve known ordering hack */
#frm_field_254_container{
  order:10 !important;
  margin-bottom:20px !important;
}

/* =========================================================
   7) INPUTS + SELECTS
========================================================= */
.ef-form-shell #frm_form_9_container input[type="text"],
.ef-form-shell #frm_form_9_container input[type="email"],
.ef-form-shell #frm_form_9_container input[type="tel"],
.ef-form-shell #frm_form_9_container input[type="url"],
.ef-form-shell #frm_form_9_container input[type="number"],
.ef-form-shell #frm_form_9_container input[type="search"],
.ef-form-shell #frm_form_9_container textarea,
.ef-form-shell #frm_form_9_container select{
  background:linear-gradient(180deg,var(--mi-fieldTop) 0%,var(--mi-fieldBot) 100%) !important;
  background-color:rgba(255,255,255,.03) !important;
  color:var(--mi-ink) !important;
  -webkit-text-fill-color:var(--mi-ink) !important;
  border:1px solid var(--mi-fieldBorder) !important;
  border-radius:var(--mi-radiusSm) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 10px 26px rgba(0,0,0,.36) !important;
  font-size:var(--ff-bodySize);
  background-clip:padding-box;
}

.ef-form-shell #frm_form_9_container input[type="text"],
.ef-form-shell #frm_form_9_container input[type="email"],
.ef-form-shell #frm_form_9_container input[type="tel"],
.ef-form-shell #frm_form_9_container input[type="url"],
.ef-form-shell #frm_form_9_container input[type="number"],
.ef-form-shell #frm_form_9_container input[type="search"],
.ef-form-shell #frm_form_9_container select{
  height:32px !important;
  min-height:32px !important;
  padding:4px 8px !important;
}

.ef-form-shell #frm_form_9_container textarea{
  min-height:54px !important;
  height:auto !important;
  padding:4px 8px !important;
}

.ef-form-shell #frm_form_9_container input::placeholder,
.ef-form-shell #frm_form_9_container textarea::placeholder{
  color:rgba(255,255,255,.40) !important;
  opacity:1;
}

.ef-form-shell #frm_form_9_container input:focus,
.ef-form-shell #frm_form_9_container textarea:focus,
.ef-form-shell #frm_form_9_container select:focus{
  outline:none !important;
  border-color:rgba(194,169,106,.34) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 0 0 2px rgba(194,169,106,.14),
    0 16px 40px rgba(0,0,0,.52) !important;
}

#frm_form_9_container select{
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.055) 0%, rgba(255,255,255,.018) 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff2c6' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 14px center !important;
  background-size:18px 18px !important;
  padding-right:46px !important;
}

#frm_form_9_container select option{
  background:#0d1117 !important;
  color:var(--mi-ink) !important;
}

#frm_form_9_container select[multiple]{
  height:auto !important;
  min-height:120px !important;
  border-radius:14px !important;
  padding:10px 12px !important;
  background-image:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015)) !important;
}

select[name="item_meta[525][]"] option:checked{
  background:rgba(212,175,55,.35) !important;
  color:#fff !important;
}

/* Checkbox and radio */
.ef-form-shell #frm_form_9_container input[type="checkbox"],
.ef-form-shell #frm_form_9_container input[type="radio"]{
  width:auto !important;
  height:auto !important;
  padding:0 !important;
  margin:0 5px 0 0 !important;
  background:transparent !important;
  border:none !important;
  appearance:auto !important;
  accent-color:var(--mi-accent);
  transform:translateY(1px);
}

.ef-form-shell #frm_form_9_container .frm_checkbox label,
.ef-form-shell #frm_form_9_container .frm_radio label{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  color:var(--mi-ink) !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  line-height:1 !important;
}

#frm_form_9_container .frm_opt_container{
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}

#frm_form_9_container .frm_radio,
#frm_form_9_container .vertical_radio .frm_radio,
#frm_form_9_container .frm_checkbox,
#frm_form_9_container .vertical_radio .frm_checkbox{
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
}

/* Upload preview footprint limiter */
#frm_form_9_container .ef-upload-preview,
#frm_form_9_container .dz-preview{
  max-width:calc(360px * (0.92 + (var(--ui-scale) * 0.08)));
}

#frm_form_9_container .ef-upload-preview{
  aspect-ratio:17 / 22;
}

/* =========================================================
   8) VALIDATION
========================================================= */
.ef-form-shell #frm_form_9_container .frm_error,
.ef-form-shell #frm_form_9_container .frm_error_style{
  color:rgba(255,235,235,.95) !important;
}

.ef-form-shell #frm_form_9_container .frm_error_style{
  background:rgba(120,20,20,.18) !important;
  border-color:rgba(255,90,90,.32) !important;
  box-shadow:0 14px 40px rgba(0,0,0,.42) !important;
}

/* =========================================================
   9) CONNECTED PROGRESS BAR
========================================================= */
.ff-progress-wrapper{
  width:100%;
  margin:0 0 12px !important;
  height:3px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,242,198,.18);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
}

.ff-progress-steps{
  display:flex;
  width:100%;
  height:100%;
}

.ff-progress-step{
  flex:1 1 0;
  height:100%;
  background:transparent;
  position:relative;
}

.ff-progress-step:first-child{
  border-radius:999px 0 0 999px;
}

.ff-progress-step:last-child{
  border-radius:0 999px 999px 0;
}

.ff-progress-step.is-done{
  background:rgba(154,129,74,.92);
}

.ff-progress-step.is-active{
  background:linear-gradient(
    90deg,
    rgba(154,129,74,1) 0%,
    rgba(194,169,106,1) 35%,
    rgba(255,242,198,1) 70%,
    rgba(255,242,198,1) 100%
  );
  box-shadow:0 0 10px rgba(255,242,198,.22), 0 0 16px rgba(194,169,106,.14);
}

.ff-progress-step.is-active:first-child{
  background:linear-gradient(90deg, rgba(255,242,198,1) 0%, rgba(255,242,198,1) 100%);
}

.ff-progress-step.is-active::before{
  content:"";
  position:absolute;
  left:-12px;
  top:0;
  width:24px;
  height:100%;
  background:linear-gradient(
    90deg,
    rgba(154,129,74,0) 0%,
    rgba(154,129,74,.55) 50%,
    rgba(154,129,74,0) 100%
  );
  opacity:.32;
  pointer-events:none;
}

.ff-progress-step.is-active:first-child::before{
  display:none;
}

/* =========================================================
   10) NAV BUTTONS
========================================================= */
.ff-nav-btn,
.ff-save-btn{
  background:var(--mi-btnGrad) !important;
  color:var(--mi-bg) !important;
  font-weight:900 !important;
  padding:12px 24px !important;
  border-radius:var(--mi-radiusSm) !important;
  cursor:pointer !important;
  text-transform:uppercase !important;
  letter-spacing:.6px;
  border:1px solid rgba(255,242,198,.18) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.45);
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease;
}

.ff-nav-btn:hover,
.ff-save-btn:hover{
  filter:brightness(1.03);
  box-shadow:0 16px 38px rgba(0,0,0,.52);
}

.ff-nav-btn:active,
.ff-save-btn:active{
  transform:translateY(1px);
}

.ff-save-btn,
.ff-resume-btn{
  padding:8px 16px !important;
  font-size:11px !important;
}

.ff-resume-btn{
  background:rgba(255,255,255,.04) !important;
  color:rgba(255,242,198,.92) !important;
  border:1px solid rgba(255,242,198,.28) !important;
  font-weight:900;
  border-radius:var(--mi-radiusSm);
  cursor:pointer;
  text-transform:uppercase;
  letter-spacing:.6px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
  transition:background .16s ease, border-color .16s ease;
}

.ff-resume-btn:hover{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(255,242,198,.38) !important;
}

/* =========================================================
   10.5) STICKY FOOTER CHECKOUT MODE
========================================================= */
#ff-sticky-footer.ff-checkout-mode{
  justify-content:flex-start !important;
}

#ff-sticky-footer.ff-checkout-mode .ff-sticky-total{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

#ff-sticky-footer.ff-checkout-mode .ff-next-tab{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

#ff-sticky-footer.ff-checkout-mode .ff-prev-tab{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}

/* =========================================================
   11) MICROTOAST ENGINE
========================================================= */
.ff-toast{
  position:fixed;
  left:50%;
  top:22vh;
  transform:translateX(-50%) translateY(8px);
  z-index:2147483647;
  min-width:260px;
  max-width:min(92vw, 420px);
  border-radius:14px;
  background:linear-gradient(180deg, rgba(10,12,18,.92), rgba(6,9,15,.86)) !important;
  border:1px solid rgba(255,242,198,.22);
  box-shadow:0 18px 60px rgba(0,0,0,.70), inset 0 0 0 1px rgba(255,255,255,.05);
  opacity:0;
  visibility:hidden;
  pointer-events:none !important;
  overflow:hidden;
  transition:
    opacity .2s ease,
    visibility .2s ease,
    transform .2s ease;
}

.ff-toast::before{
  content:"";
  position:absolute;
  inset:-60% -50% auto auto;
  width:320px;
  height:320px;
  background:radial-gradient(circle at 30% 30%, rgba(255,242,198,.12), transparent 62%);
  pointer-events:none;
}

.ff-toast.ff-show{
  opacity:1;
  visibility:visible;
  transform:translateX(-50%) translateY(0);
}

.ff-toast-content{
  position:relative;
  z-index:1;
  padding:14px 18px 12px;
}

.ff-toast-content strong{
  display:block;
  color:rgba(255,242,198,.95) !important;
  font-weight:900 !important;
  letter-spacing:.4px;
  font-size:13px;
  margin-bottom:6px;
}

.ff-toast-content p{
  margin:0;
  color:var(--mi-ink) !important;
  font-weight:600 !important;
  font-size:12px;
  line-height:1.35;
}

.ff-toast-progress{
  height:3px;
  width:100%;
  background:linear-gradient(
    90deg,
    rgba(154,129,74,1) 0%,
    rgba(194,169,106,1) 45%,
    rgba(255,242,198,1) 100%
  );
  opacity:.95;
}

/* =========================================================
   12) ELEMENTOR NESTED TABS
========================================================= */
.ef-form-shell .order-form-tabs{
  position:relative;
  z-index:1000;
}

.ef-form-shell .order-form-tabs::before{
  content:"";
  position:fixed;
  left:0;
  right:0;
  top:66px;
  height:82px;
  z-index:999;
  pointer-events:none;
  background:
    linear-gradient(
      180deg,
      rgba(255,245,210,.08) 0%,
      rgba(28,30,38,.80) 18%,
      rgba(8,10,16,.96) 100%
    );
  backdrop-filter:blur(10px) saturate(135%);
  -webkit-backdrop-filter:blur(10px) saturate(135%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -1px 0 rgba(255,220,140,.12),
    0 16px 34px rgba(0,0,0,.55);
}

.ef-form-shell .order-form-tabs .e-n-tabs-heading{
  position:fixed !important;
  top:98px !important;
  left:0;
  right:0;
  z-index:10000;
  background:transparent !important;
  max-width:1040px;
  margin-left:auto;
  margin-right:auto;
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:6px !important;
  justify-content:space-between;
  align-items:stretch;
  padding:4px 6px !important;
  scrollbar-width:none;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.42));
}

.ef-form-shell .order-form-tabs .e-n-tabs-heading::-webkit-scrollbar{
  display:none;
}

.ef-form-shell .order-form-tabs .e-n-tabs-heading::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:1px;
  transform:translateY(-50%);
  background:linear-gradient(
    90deg,
    rgba(255,255,255,0),
    rgba(255,255,255,.12),
    rgba(194,169,106,.14),
    rgba(255,255,255,.12),
    rgba(255,255,255,0)
  );
  pointer-events:none;
  opacity:.45;
}

.ef-form-shell .order-form-tabs .e-n-tab-title{
  position:relative;
  flex:1 1 0 !important;
  min-width:0 !important;
  max-width:none !important;
  overflow:hidden;
  border:1px solid rgba(255,236,185,.28);
  border-radius:0 !important;
  background:
    radial-gradient(130% 220% at 50% -30%, rgba(255,245,210,.18) 0%, rgba(255,245,210,0) 42%),
    linear-gradient(180deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,.04) 18%, rgba(10,12,18,.94) 100%),
    linear-gradient(135deg, rgba(20,24,36,1) 0%, rgba(6,8,14,1) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -1px 0 rgba(255,220,130,.10),
    0 12px 24px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,220,130,.04);
  transition:
    transform .16s ease,
    box-shadow .18s ease,
    filter .18s ease,
    border-color .18s ease,
    background .18s ease;
  -webkit-tap-highlight-color:transparent;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  min-height:60px !important;
  padding:8px 10px !important;
  overflow:hidden;
}

.ef-form-shell .order-form-tabs .e-n-tab-title::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.20) 0%,
    rgba(255,255,255,.07) 18%,
    rgba(255,255,255,0) 56%
  );
  opacity:1;
}

.ef-form-shell .order-form-tabs .e-n-tab-title::after{
  content:"";
  position:absolute;
  top:-25%;
  left:-42%;
  width:34%;
  height:180%;
  pointer-events:none;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,0) 0%,
    rgba(255,245,210,.34) 50%,
    rgba(255,255,255,0) 100%
  );
  transform:rotate(18deg);
  opacity:0;
  transition:opacity .18s ease;
}

.ef-form-shell .order-form-tabs .e-n-tab-title:not([aria-selected="true"]){
  color:rgba(255,255,255,.90);
}

.ef-form-shell .order-form-tabs .e-n-tab-title:not([aria-selected="true"]) .e-n-tab-title-text{
  color:rgba(255,255,255,.84);
  text-shadow:
    0 1px 0 rgba(0,0,0,.78),
    0 0 10px rgba(255,230,160,.08);
}

.ef-form-shell .order-form-tabs .e-n-tab-title:hover{
  transform:translateY(-1px);
  border-color:rgba(255,236,185,.48);
  filter:brightness(1.12);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    inset 0 -1px 0 rgba(255,220,130,.16),
    0 18px 32px rgba(0,0,0,.44),
    0 0 24px rgba(212,175,55,.18),
    0 0 0 1px rgba(255,228,150,.12);
}

.ef-form-shell .order-form-tabs .e-n-tab-title:hover::after{
  opacity:1;
}

.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"],
.ef-form-shell .order-form-tabs .e-n-tab-title.elementor-active{
  border-color:rgba(255,240,200,.74);
  background:
    radial-gradient(140% 260% at 50% -35%, rgba(255,245,210,.40) 0%, rgba(255,245,210,0) 44%),
    linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,.08) 16%, rgba(6,8,14,.98) 100%),
    linear-gradient(135deg, rgba(16,20,32,1) 0%, rgba(2,4,10,1) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -1px 0 rgba(255,235,180,.20),
    0 20px 38px rgba(0,0,0,.50),
    0 0 0 1px rgba(255,228,150,.18),
    0 0 34px rgba(212,175,55,.24),
    0 0 58px rgba(255,228,150,.10);
}

.ef-form-shell .order-form-tabs .e-n-tab-title:focus{
  outline:none !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title:focus-visible{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 0 0 2px rgba(194,169,106,.20),
    0 20px 38px rgba(0,0,0,.50),
    0 0 30px rgba(212,175,55,.18);
  border-color:rgba(255,240,200,.74);
}

.ef-form-shell .order-form-tabs .e-n-tab-title-text,
.ef-form-shell .order-form-tabs .e-n-tab-title span{
  position:relative;
  z-index:2;
  display:-webkit-box !important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden !important;
  white-space:normal !important;
  text-overflow:ellipsis;
  width:100%;
  text-align:center !important;
  line-height:1.03 !important;
  max-height:calc(1.03em * 2);
  padding:0 2px;
  font-size:.94rem !important;
  font-weight:700 !important;
  letter-spacing:.01em;
  color:rgba(255,255,255,.90) !important;
  text-shadow:
    0 1px 0 rgba(0,0,0,.84),
    0 0 10px rgba(255,230,160,.08) !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title:hover .e-n-tab-title-text,
.ef-form-shell .order-form-tabs .e-n-tab-title:hover span{
  color:rgba(255,246,220,.98) !important;
  text-shadow:
    0 1px 0 rgba(0,0,0,.82),
    0 0 14px rgba(255,228,150,.18) !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text,
.ef-form-shell .order-form-tabs .e-n-tab-title.elementor-active .e-n-tab-title-text,
.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"] span,
.ef-form-shell .order-form-tabs .e-n-tab-title.elementor-active span{
  color:rgba(255,248,230,1) !important;
  text-shadow:
    0 1px 0 rgba(0,0,0,.84),
    0 0 18px rgba(255,230,160,.26),
    0 0 30px rgba(255,230,160,.12) !important;
}

.ef-form-shell .order-form-tabs .e-n-tabs-heading::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-2px;
  transform:translateX(-50%);
  width:min(840px, 90%);
  height:2px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(255,228,150,.98),
    transparent
  );
  box-shadow:
    0 0 14px rgba(255,220,130,.28),
    0 0 30px rgba(212,175,55,.18);
}

.ef-form-shell .order-form-tabs .e-n-tabs-content{
  padding-top:0 !important;
  margin-top:88px !important;
}

@media (prefers-reduced-motion: reduce){
  .ef-form-shell .order-form-tabs .e-n-tab-title::after{
    animation:none !important;
  }
}

@media (max-width:768px){
  .ef-form-shell .order-form-tabs .e-n-tabs-heading{
    max-width:96%;
    gap:4px !important;
    padding:4px 4px !important;
  }

  .ef-form-shell .order-form-tabs .e-n-tab-title{
    flex:0 0 auto !important;
    min-width:156px !important;
    min-height:56px !important;
    white-space:normal !important;
  }

  .ff-toast{
    width:90%;
    top:15vh;
    min-width:0;
  }
}

/* =========================================================
   13) SELECT2 / CHOSEN
========================================================= */
.ef-form-shell #frm_form_9_container .select2-container .select2-selection--single{
  background:linear-gradient(180deg,var(--mi-fieldTop) 0%,var(--mi-fieldBot) 100%) !important;
  border:1px solid var(--mi-fieldBorder) !important;
  border-radius:var(--mi-radiusSm) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 10px 26px rgba(0,0,0,.36) !important;
}

.ef-form-shell #frm_form_9_container .select2-container .select2-selection__rendered{
  color:var(--mi-ink) !important;
  -webkit-text-fill-color:var(--mi-ink) !important;
}

.ef-form-shell .select2-container--open .select2-dropdown{
  border-color:rgba(255,255,255,.14) !important;
  box-shadow:0 18px 55px rgba(0,0,0,.55) !important;
}

.ef-form-shell .select2-container--open .select2-results__options{
  background:rgba(8,10,12,.98) !important;
  color:rgba(255,255,255,.90) !important;
}

.ef-form-shell .select2-container--open .select2-results__option--highlighted{
  background:rgba(194,169,106,.14) !important;
  color:rgba(255,255,255,.95) !important;
}

.ef-form-shell .select2-container--open .select2-search__field{
  background:rgba(8,10,12,.92) !important;
  color:rgba(255,255,255,.90) !important;
  border-color:rgba(255,255,255,.16) !important;
  outline:none !important;
}

.ef-form-shell #frm_form_9_container .chosen-container-single .chosen-single{
  background:linear-gradient(180deg,var(--mi-fieldTop) 0%,var(--mi-fieldBot) 100%) !important;
  border:1px solid var(--mi-fieldBorder) !important;
  border-radius:var(--mi-radiusSm) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 10px 26px rgba(0,0,0,.36) !important;
}

.ef-form-shell #frm_form_9_container .chosen-container-single .chosen-single span{
  color:var(--mi-ink) !important;
  -webkit-text-fill-color:var(--mi-ink) !important;
}

.ef-form-shell #frm_form_9_container .chosen-container .chosen-drop{
  background:rgba(8,10,12,.98) !important;
  border-color:rgba(255,255,255,.14) !important;
  box-shadow:0 18px 55px rgba(0,0,0,.55) !important;
}

.ef-form-shell #frm_form_9_container .chosen-container .chosen-results li{
  color:rgba(255,255,255,.90) !important;
}

/* =========================================================
   14) AUTOFILL OVERRIDES
========================================================= */
.ef-form-shell #frm_form_9_container input:-webkit-autofill,
.ef-form-shell #frm_form_9_container textarea:-webkit-autofill,
.ef-form-shell #frm_form_9_container select:-webkit-autofill,
.ef-form-shell #frm_form_9_container input:-webkit-autofill:hover,
.ef-form-shell #frm_form_9_container textarea:-webkit-autofill:hover,
.ef-form-shell #frm_form_9_container select:-webkit-autofill:hover,
.ef-form-shell #frm_form_9_container input:-webkit-autofill:focus,
.ef-form-shell #frm_form_9_container textarea:-webkit-autofill:focus,
.ef-form-shell #frm_form_9_container select:-webkit-autofill:focus,
.ef-form-shell #frm_form_9_container input:-webkit-autofill:active,
.ef-form-shell #frm_form_9_container textarea:-webkit-autofill:active,
.ef-form-shell #frm_form_9_container select:-webkit-autofill:active{
  -webkit-text-fill-color:var(--mi-ink) !important;
  caret-color:var(--mi-ink) !important;
  -webkit-box-shadow:0 0 0 1000px rgba(255,255,255,.03) inset !important;
  box-shadow:
    0 0 0 1000px rgba(255,255,255,.03) inset,
    inset 0 1px 0 rgba(255,255,255,.07),
    0 10px 26px rgba(0,0,0,.36) !important;
  border-color:var(--mi-fieldBorder) !important;
  transition:background-color 99999s ease-out 0s, color 99999s ease-out 0s !important;
  background-color:rgba(255,255,255,.03) !important;
  background-image:linear-gradient(180deg,var(--mi-fieldTop) 0%,var(--mi-fieldBot) 100%) !important;
}

.ef-form-shell #frm_form_9_container input[readonly],
.ef-form-shell #frm_form_9_container textarea[readonly],
.ef-form-shell #frm_form_9_container select[readonly],
.ef-form-shell #frm_form_9_container input:disabled,
.ef-form-shell #frm_form_9_container textarea:disabled,
.ef-form-shell #frm_form_9_container select:disabled{
  background:linear-gradient(180deg,var(--mi-fieldTop) 0%,var(--mi-fieldBot) 100%) !important;
  background-color:rgba(255,255,255,.03) !important;
  color:var(--mi-ink) !important;
  -webkit-text-fill-color:var(--mi-ink) !important;
  border-color:var(--mi-fieldBorder) !important;
  opacity:1 !important;
}

/* =========================================================
   15) FIX PACK: KILL HORIZONTAL SCROLLBAR
========================================================= */
.ef-form-shell,
.ef-form-shell *{
  box-sizing:border-box;
}

.ef-form-shell{
  overflow-x:hidden !important;
}

.ef-form-shell #frm_form_9_container,
.ef-form-shell #frm_form_9_container form{
  overflow-x:hidden !important;
  max-width:100% !important;
}

.ef-form-shell #frm_form_9_container form::after{
  left:-15% !important;
  right:-15% !important;
  width:auto !important;
  max-width:none !important;
}

.ef-form-shell .order-form-tabs,
.ef-form-shell .order-form-tabs .e-n-tabs-heading{
  overflow-x:hidden !important;
}


/* =========================================================
   16) WOOCOMMERCE CHECKOUT SKIN
   Premium Checkout Refresh
========================================================= */

.ef-checkout-wrap{
  max-width: 1040px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.ef-checkout-card{
  position: relative;
  border-radius: 22px;
  border: 1px solid rgba(214,177,93,.24);
  background:
    radial-gradient(circle at 50% 0%, rgba(214,177,93,.08), transparent 28%),
    linear-gradient(180deg, rgba(34,34,34,.72) 0%, rgba(10,12,18,.88) 48%, rgba(5,8,14,.94) 100%);
  box-shadow:
    0 18px 48px rgba(0,0,0,.48),
    inset 0 1px 0 rgba(255,255,255,.04),
    inset 0 0 0 1px rgba(255,255,255,.03);
  padding: 26px 24px 22px;
  overflow: hidden;
}

.ef-checkout-card::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, transparent 0%, rgba(214,177,93,.035) 18%, rgba(255,242,198,.05) 50%, rgba(214,177,93,.03) 82%, transparent 100%);
  opacity:.9;
}

.ef-checkout-wrap h3,
.ef-checkout-wrap #order_review_heading{
  color: rgba(255,244,214,.96);
  font-weight: 800;
  letter-spacing: .015em;
  font-size: clamp(28px, 2.2vw, 38px);
  line-height: 1.1;
  margin: 10px 0 20px;
  text-shadow: 0 1px 0 rgba(0,0,0,.35);
}

.ef-checkout-wrap .woocommerce-info,
.ef-checkout-wrap .woocommerce-message,
.ef-checkout-wrap .woocommerce-error{
  border-radius: 16px;
  border: 1px solid rgba(214,177,93,.20);
  background: rgba(0,0,0,.34);
  color: rgba(255,255,255,.88);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}

.ef-checkout-wrap .woocommerce form .form-row{
  margin-bottom: 16px;
}

.ef-checkout-wrap .woocommerce form .form-row label{
  color: rgba(255,247,224,.78);
  font-weight: 700;
  font-size: 13px;
  letter-spacing: .02em;
  margin-bottom: 6px;
}

.ef-checkout-wrap .woocommerce form .form-row input.input-text,
.ef-checkout-wrap .woocommerce form .form-row textarea,
.ef-checkout-wrap .select2-container--default .select2-selection--single,
.ef-checkout-wrap .input-text,
.ef-checkout-wrap input[type="text"],
.ef-checkout-wrap input[type="email"],
.ef-checkout-wrap input[type="tel"],
.ef-checkout-wrap textarea{
  background: linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(0,0,0,.36) 100%);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  color: var(--mi-ink);
  padding: 11px 13px;
  min-height: 46px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 0 0 1px rgba(255,255,255,0);
  transition: border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.ef-checkout-wrap .woocommerce form .form-row textarea{
  min-height: 120px;
  resize: vertical;
}

.ef-checkout-wrap .woocommerce form .form-row input.input-text:focus,
.ef-checkout-wrap .woocommerce form .form-row textarea:focus,
.ef-checkout-wrap .select2-container--default.select2-container--focus .select2-selection--single,
.ef-checkout-wrap .input-text:focus,
.ef-checkout-wrap input[type="text"]:focus,
.ef-checkout-wrap input[type="email"]:focus,
.ef-checkout-wrap input[type="tel"]:focus,
.ef-checkout-wrap textarea:focus{
  outline: none;
  border-color: rgba(214,177,93,.42);
  box-shadow:
    0 0 0 3px rgba(214,177,93,.10),
    inset 0 1px 0 rgba(255,255,255,.04);
}

/* ---------------------------------------------------------
   Coupon area
--------------------------------------------------------- */

.ef-checkout-wrap .checkout_coupon,
.ef-checkout-wrap form.checkout_coupon{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.ef-checkout-wrap .checkout_coupon p,
.ef-checkout-wrap form.checkout_coupon p{
  margin: 0;
}

.ef-checkout-wrap .checkout_coupon .form-row-first,
.ef-checkout-wrap .checkout_coupon .form-row-last{
  float: none;
  width: auto;
}

.ef-checkout-wrap .checkout_coupon input.input-text,
.ef-checkout-wrap form.checkout_coupon input.input-text,
.ef-checkout-wrap input[name="coupon_code"]{
  min-width: 190px;
  width: 190px;
  min-height: 42px;
  height: 42px;
  padding: 8px 12px;
  border-radius: 10px;
  font-size: 14px;
}

.ef-checkout-wrap .checkout_coupon button.button,
.ef-checkout-wrap form.checkout_coupon button.button,
.ef-checkout-wrap .checkout_coupon .button,
.ef-checkout-wrap button[name="apply_coupon"]{
  min-height: 42px;
  height: 42px;
  padding: 0 16px;
  border-radius: 10px;
  border: 1px solid rgba(214,177,93,.34);
  background: linear-gradient(180deg, rgba(241,223,171,.98) 0%, rgba(196,162,84,.92) 100%);
  color: #0a0d14;
  font-weight: 800;
  font-size: 14px;
  line-height: 1;
  box-shadow:
    0 8px 18px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.32);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.ef-checkout-wrap .checkout_coupon button.button:hover,
.ef-checkout-wrap form.checkout_coupon button.button:hover,
.ef-checkout-wrap .checkout_coupon .button:hover,
.ef-checkout-wrap button[name="apply_coupon"]:hover{
  transform: translateY(-1px);
  box-shadow:
    0 12px 24px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.35);
  filter: brightness(1.03);
}

/* ---------------------------------------------------------
   Tables / review
--------------------------------------------------------- */

.ef-checkout-wrap table.shop_table{
  width: 100%;
  border: 1px solid rgba(214,177,93,.18);
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(0,0,0,.16) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 14px 34px rgba(0,0,0,.22);
}

.ef-checkout-wrap table.shop_table th,
.ef-checkout-wrap table.shop_table td{
  padding: 12px 14px;
  border-color: rgba(255,242,198,.08);
  color: rgba(255,255,255,.88);
  vertical-align: top;
}

.ef-checkout-wrap table.shop_table th{
  color: rgba(255,244,214,.78);
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
  font-size: 12px;
}

.ef-checkout-wrap table.shop_table tfoot td,
.ef-checkout-wrap table.shop_table tfoot th{
  font-weight: 800;
  color: rgba(255,244,214,.96);
}

/* ---------------------------------------------------------
   Premium order total plaque
--------------------------------------------------------- */

.ef-checkout-wrap .order-total td,
.ef-checkout-wrap .order-total th,
.ef-checkout-wrap tr.order-total td,
.ef-checkout-wrap tr.order-total th{
  position: relative;
}

.ef-checkout-wrap .order-total .woocommerce-Price-amount,
.ef-checkout-wrap tr.order-total .woocommerce-Price-amount,
.ef-checkout-wrap .cart-subtotal .woocommerce-Price-amount{
  font-weight: 900;
  letter-spacing: .01em;
}

.ef-checkout-wrap .ef-order-total-plaque,
.ef-checkout-wrap .order-total td .amount,
.ef-checkout-wrap tr.order-total td .amount{
  position: relative;
}

.ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total th,
.ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td{
  border-top: 1px solid rgba(214,177,93,.14);
  padding-top: 18px;
  padding-bottom: 18px;
}

.ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td{
  text-align: right;
}

.ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td .woocommerce-Price-amount,
.ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td strong{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-width: 220px;
  min-height: 62px;
  padding: 0 26px;
  border-radius: 999px;
  border: 1px solid rgba(214,177,93,.28);
  background:
    radial-gradient(circle at 50% -30%, rgba(255,242,198,.12), transparent 55%),
    linear-gradient(180deg, rgba(24,28,38,.94) 0%, rgba(10,13,20,.98) 100%);
  box-shadow:
    0 14px 32px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.05),
    inset 0 0 24px rgba(214,177,93,.05);
  color: rgba(255,245,222,.98);
  font-size: 32px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.01em;
}

.ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td strong::before,
.ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td .woocommerce-Price-amount::before{
  content: 'ORDER TOTAL';
  display: inline-block;
  margin-right: 2px;
  color: rgba(255,235,186,.78);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

/* ---------------------------------------------------------
   Payment panel
--------------------------------------------------------- */

.ef-checkout-wrap #payment{
  background:
    linear-gradient(180deg, rgba(255,255,255,.015) 0%, rgba(0,0,0,.18) 100%);
  border: 1px solid rgba(214,177,93,.16);
  border-radius: 18px;
  padding: 18px 18px 20px;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 12px 28px rgba(0,0,0,.18);
}

.ef-checkout-wrap #payment ul.payment_methods{
  border-bottom: 1px solid rgba(214,177,93,.10);
  padding-bottom: 12px;
  margin-bottom: 14px;
}

.ef-checkout-wrap #payment ul.payment_methods li{
  color: rgba(255,255,255,.9);
}

.ef-checkout-wrap #payment div.payment_box{
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 14px;
  color: rgba(255,255,255,.80);
}

.ef-checkout-wrap #payment div.payment_box::before{
  border-bottom-color: rgba(255,255,255,.06);
}

.ef-checkout-wrap .wc-stripe-elements-field,
.ef-checkout-wrap .StripeElement{
  background: linear-gradient(180deg, rgba(255,255,255,.03) 0%, rgba(0,0,0,.34) 100%) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 12px !important;
  padding: 10px 12px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}

/* ---------------------------------------------------------
   Campaign Details Snapshot
   Clean single-scroll version
--------------------------------------------------------- */

.ef-woo-checkout-panel{
  margin-top: 12px;
}

.ef-woo-refresh{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-decoration: none;
  color: rgba(255,236,190,.86);
  opacity: .92;
}

.ef-woo-refresh:hover{
  color: rgba(255,245,220,.98);
}

.ef-woo-status{
  margin: 0 0 12px 0;
  font-size: 12px;
  color: rgba(255,255,255,.68);
  opacity: .95;
}

.ef-woo-checkout-mount{
  min-height: 60px;
}

/* Snapshot outer shell */
.ef-checkout-wrap .ef-session-snapshot,
.ef-checkout-wrap .ef-checkout-snapshot,
.ef-checkout-wrap .campaign-details-snapshot{
  position: relative;
  margin-top: 18px;
  border-radius: 18px;
  border: 1px solid rgba(214,177,93,.18);
  background:
    linear-gradient(180deg, rgba(52,49,41,.52) 0%, rgba(20,23,31,.68) 44%, rgba(7,10,17,.88) 100%);
  box-shadow:
    0 18px 36px rgba(0,0,0,.32),
    inset 0 1px 0 rgba(255,255,255,.04);
  overflow: hidden;
}

/* Snapshot header */
.ef-checkout-wrap .ef-session-snapshot__header,
.ef-checkout-wrap .ef-checkout-snapshot__header,
.ef-checkout-wrap .campaign-details-snapshot__header{
  padding: 16px 18px 14px;
  border-bottom: 1px solid rgba(214,177,93,.10);
  background:
    linear-gradient(90deg, rgba(255,255,255,.04) 0%, rgba(214,177,93,.08) 50%, rgba(255,255,255,.03) 100%);
}

.ef-checkout-wrap .ef-session-snapshot__title,
.ef-checkout-wrap .ef-checkout-snapshot__title,
.ef-checkout-wrap .campaign-details-snapshot__title{
  color: rgba(255,244,214,.96);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.2;
  margin: 0 0 4px;
}

.ef-checkout-wrap .ef-session-snapshot__subtitle,
.ef-checkout-wrap .ef-checkout-snapshot__subtitle,
.ef-checkout-wrap .campaign-details-snapshot__subtitle{
  color: rgba(255,255,255,.64);
  font-size: 12px;
  line-height: 1.45;
}

/* Snapshot body */
.ef-checkout-wrap .ef-session-snapshot__body,
.ef-checkout-wrap .ef-checkout-snapshot__body,
.ef-checkout-wrap .campaign-details-snapshot__body{
  padding: 14px 16px 16px;
}

/* 
   IMPORTANT:
   Only the inner snapshot scroll area should scroll.
   Do not put .ef-order-review-shell in this selector.
*/
.ef-checkout-wrap .ef-session-snapshot__scroll,
.ef-checkout-wrap .ef-checkout-snapshot__scroll,
.ef-checkout-wrap .campaign-details-snapshot__scroll,
.ef-checkout-wrap .snapshot-scroll{
  max-height: 310px;
  overflow-y: auto;
  overflow-x: hidden;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.06);
  background:
    linear-gradient(180deg, rgba(255,255,255,.025) 0%, rgba(0,0,0,.22) 100%);
  padding: 14px 18px 14px 14px;
  scrollbar-width: thin;
  scrollbar-color: rgba(214,177,93,.78) rgba(255,255,255,.05);
}

/* Prevent Woo/order review wrappers from becoming nested scroll containers */
.ef-checkout-wrap .ef-order-review-shell,
.ef-checkout-wrap #order_review,
.ef-checkout-wrap .woocommerce-checkout-review-order{
  max-height: none !important;
  overflow: visible !important;
}

/* Chrome / Edge / Safari scrollbar */
.ef-checkout-wrap .ef-session-snapshot__scroll::-webkit-scrollbar,
.ef-checkout-wrap .ef-checkout-snapshot__scroll::-webkit-scrollbar,
.ef-checkout-wrap .campaign-details-snapshot__scroll::-webkit-scrollbar,
.ef-checkout-wrap .snapshot-scroll::-webkit-scrollbar{
  width: 12px;
}

/* Hide default white arrow buttons */
.ef-checkout-wrap .ef-session-snapshot__scroll::-webkit-scrollbar-button,
.ef-checkout-wrap .ef-checkout-snapshot__scroll::-webkit-scrollbar-button,
.ef-checkout-wrap .campaign-details-snapshot__scroll::-webkit-scrollbar-button,
.ef-checkout-wrap .snapshot-scroll::-webkit-scrollbar-button{
  display: none;
  width: 0;
  height: 0;
}

/* Track */
.ef-checkout-wrap .ef-session-snapshot__scroll::-webkit-scrollbar-track,
.ef-checkout-wrap .ef-checkout-snapshot__scroll::-webkit-scrollbar-track,
.ef-checkout-wrap .campaign-details-snapshot__scroll::-webkit-scrollbar-track,
.ef-checkout-wrap .snapshot-scroll::-webkit-scrollbar-track{
  background:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.34));
  border-left: 1px solid rgba(255,255,255,.06);
  border-radius: 999px;
}

/* Thumb */
.ef-checkout-wrap .ef-session-snapshot__scroll::-webkit-scrollbar-thumb,
.ef-checkout-wrap .ef-checkout-snapshot__scroll::-webkit-scrollbar-thumb,
.ef-checkout-wrap .campaign-details-snapshot__scroll::-webkit-scrollbar-thumb,
.ef-checkout-wrap .snapshot-scroll::-webkit-scrollbar-thumb{
  border-radius: 999px;
  background:
    linear-gradient(
      180deg,
      rgba(255,239,183,.95) 0%,
      rgba(214,177,93,.88) 42%,
      rgba(136,102,38,.92) 100%
    );
  border: 3px solid rgba(12,13,17,.92);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.38),
    0 0 12px rgba(214,177,93,.20);
}

/* Thumb hover */
.ef-checkout-wrap .ef-session-snapshot__scroll::-webkit-scrollbar-thumb:hover,
.ef-checkout-wrap .ef-checkout-snapshot__scroll::-webkit-scrollbar-thumb:hover,
.ef-checkout-wrap .campaign-details-snapshot__scroll::-webkit-scrollbar-thumb:hover,
.ef-checkout-wrap .snapshot-scroll::-webkit-scrollbar-thumb:hover{
  background:
    linear-gradient(
      180deg,
      rgba(255,247,211,1) 0%,
      rgba(231,194,107,.95) 45%,
      rgba(153,114,43,.96) 100%
    );
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.50),
    0 0 16px rgba(214,177,93,.32);
}

/* Snapshot table */
.ef-checkout-wrap .ef-session-snapshot table,
.ef-checkout-wrap .ef-checkout-snapshot table,
.ef-checkout-wrap .campaign-details-snapshot table{
  width: 100%;
  border-collapse: collapse;
}

.ef-checkout-wrap .ef-session-snapshot table tr,
.ef-checkout-wrap .ef-checkout-snapshot table tr,
.ef-checkout-wrap .campaign-details-snapshot table tr{
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.ef-checkout-wrap .ef-session-snapshot table tr:last-child,
.ef-checkout-wrap .ef-checkout-snapshot table tr:last-child,
.ef-checkout-wrap .campaign-details-snapshot table tr:last-child{
  border-bottom: 0;
}

.ef-checkout-wrap .ef-session-snapshot table th,
.ef-checkout-wrap .ef-checkout-snapshot table th,
.ef-checkout-wrap .campaign-details-snapshot table th,
.ef-checkout-wrap .ef-session-snapshot table td,
.ef-checkout-wrap .ef-checkout-snapshot table td,
.ef-checkout-wrap .campaign-details-snapshot table td{
  padding: 13px 12px;
  vertical-align: top;
  text-align: left;
}

.ef-checkout-wrap .ef-session-snapshot table th,
.ef-checkout-wrap .ef-checkout-snapshot table th,
.ef-checkout-wrap .campaign-details-snapshot table th{
  width: 34%;
  color: rgba(255,236,190,.78);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .03em;
}

.ef-checkout-wrap .ef-session-snapshot table td,
.ef-checkout-wrap .ef-checkout-snapshot table td,
.ef-checkout-wrap .campaign-details-snapshot table td{
  color: rgba(255,255,255,.90);
  font-size: 14px;
  line-height: 1.5;
  word-break: break-word;
}

/* Hide raw/debug output if it leaks into the snapshot */
.ef-checkout-wrap .ef-session-snapshot pre,
.ef-checkout-wrap .ef-checkout-snapshot pre,
.ef-checkout-wrap .campaign-details-snapshot pre,
.ef-checkout-wrap .raw-session-payload,
.ef-checkout-wrap .ef-raw-payload,
.ef-checkout-wrap .debug-payload{
  display: none !important;
}

.ef-checkout-wrap .ef-session-snapshot code,
.ef-checkout-wrap .ef-checkout-snapshot code,
.ef-checkout-wrap .campaign-details-snapshot code{
  white-space: pre-wrap;
  word-break: break-word;
  color: rgba(255,255,255,.82);
}

/* ---------------------------------------------------------
   Complete Order button
--------------------------------------------------------- */

.ef-checkout-wrap #place_order{
  position: relative;
  width: 100%;
  min-height: 62px;
  border: 1px solid rgba(214,177,93,.38);
  border-radius: 16px;
  padding: 18px 24px;
  font-weight: 900;
  font-size: 16px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #06080d;
  background:
    linear-gradient(180deg, rgba(255,247,214,.98) 0%, rgba(226,204,146,.96) 36%, rgba(193,157,76,.94) 100%);
  box-shadow:
    0 16px 34px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.40),
    inset 0 -1px 0 rgba(122,88,24,.32);
  overflow: hidden;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.ef-checkout-wrap #place_order::before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(120deg, transparent 16%, rgba(255,255,255,.22) 30%, transparent 46%);
  opacity:.8;
}

.ef-checkout-wrap #place_order:hover{
  transform: translateY(-2px);
  filter: brightness(1.02);
  box-shadow:
    0 22px 42px rgba(0,0,0,.50),
    inset 0 1px 0 rgba(255,255,255,.45),
    inset 0 -1px 0 rgba(122,88,24,.35);
}

.ef-checkout-wrap #place_order:active{
  transform: translateY(0);
  box-shadow:
    0 10px 22px rgba(0,0,0,.36),
    inset 0 1px 0 rgba(255,255,255,.36);
}

.ef-checkout-wrap #place_order:focus{
  outline: none;
  box-shadow:
    0 0 0 4px rgba(214,177,93,.18),
    0 18px 36px rgba(0,0,0,.46),
    inset 0 1px 0 rgba(255,255,255,.40);
}

/* Wrapper around place order if Woo outputs one */
.ef-checkout-wrap .place-order{
  margin-top: 22px;
}

.ef-checkout-wrap .place-order .button,
.ef-checkout-wrap .place-order #place_order{
  margin-top: 6px;
}

/* ---------------------------------------------------------
   Supporting status / utility
--------------------------------------------------------- */

.ef-checkout-status{
  font-size: 13px;
  color: rgba(255,255,255,.68);
}

button.ef-checkout-reload{
  background: transparent;
  border: 0;
  color: rgba(255,242,198,.92);
  text-decoration: underline;
  cursor: pointer;
}

/* Hide Formidable submit button in FF9 */
#frm_form_9_container .frm_final_submit,
#frm_form_9_container button[type="submit"].frm_button_submit,
#frm_form_9_container input[type="submit"].frm_button_submit{
  display: none !important;
}

/* ---------------------------------------------------------
   Responsive
--------------------------------------------------------- */

@media (max-width: 767px){
  .ef-checkout-card{
    padding: 20px 16px 18px;
    border-radius: 18px;
  }

  .ef-checkout-wrap h3,
  .ef-checkout-wrap #order_review_heading{
    font-size: 30px;
    margin-bottom: 16px;
  }

  .ef-checkout-wrap .checkout_coupon,
  .ef-checkout-wrap form.checkout_coupon{
    gap: 8px;
  }

  .ef-checkout-wrap .checkout_coupon input.input-text,
  .ef-checkout-wrap form.checkout_coupon input.input-text,
  .ef-checkout-wrap input[name="coupon_code"]{
    width: 100%;
    min-width: 0;
  }

  .ef-checkout-wrap .checkout_coupon .form-row-first,
  .ef-checkout-wrap .checkout_coupon .form-row-last{
    width: 100%;
  }

  .ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td .woocommerce-Price-amount,
  .ef-checkout-wrap .woocommerce-checkout-review-order-table tfoot tr.order-total td strong{
    min-width: 100%;
    justify-content: space-between;
    padding: 0 18px;
    font-size: 28px;
  }

  .ef-checkout-wrap .ef-session-snapshot table th,
  .ef-checkout-wrap .ef-checkout-snapshot table th,
  .ef-checkout-wrap .campaign-details-snapshot table th,
  .ef-checkout-wrap .ef-session-snapshot table td,
  .ef-checkout-wrap .ef-checkout-snapshot table td,
  .ef-checkout-wrap .campaign-details-snapshot table td{
    display: block;
    width: 100%;
    padding: 10px 0;
  }

  .ef-checkout-wrap #place_order{
    min-height: 58px;
    padding: 16px 18px;
    font-size: 15px;
    letter-spacing: .10em;
  }
}


/* =========================================================
   17) UTILITIES
========================================================= */
.ef-loader{
  border:3px solid rgba(255,255,255,.10);
  border-top:3px solid rgba(216,191,122,.72);
  border-radius:50%;
  width:20px;
  height:20px;
  display:inline-block;
  animation:ef-spin .8s linear infinite;
}

@keyframes ef-spin{
  to{ transform:rotate(360deg); }
}

.ppick,
.ff-resume-link{
  display:block !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  position:relative !important;
  z-index:10000005 !important;
}


/* =========================================================
   18) CSE COVERAGE SELECTOR ENGINE
   Modular / cleaned canonical block
========================================================= */

#ef-county-list{
  --cse-gap:10px;
  --cse-card-radius:18px;
  --cse-card-radius-inner:12px;
  --cse-border:rgba(255,242,198,.12);
  --cse-border-strong:rgba(194,169,106,.28);
  --cse-border-soft:rgba(255,242,198,.08);
  --cse-glow:rgba(214,177,93,.10);
  --cse-text:rgba(255,255,255,.92);
  --cse-muted:rgba(255,255,255,.60);
  --cse-muted-2:rgba(255,255,255,.72);
  --cse-accent:rgba(255,232,173,.96);
  --cse-chip-h:28px;
  --cse-chip-pad-y:5px;
  --cse-chip-pad-x:10px;
  --cse-row-gap:4px;
  --cse-controls-pad-x:16px;
  --cse-controls-pad-b:10px;
  --cse-entire-h:56px;
  --cse-entire-pad-y:8px;
  --cse-entire-pad-x:12px;
  --cse-kid-h:42px;
  --cse-kid-pad-y:8px;
  --cse-kid-pad-x:10px;
  display:flex;
  flex-direction:column;
  gap:var(--cse-gap);
  position:relative;
  padding-top:6px !important;
  padding-bottom:6px !important;
}

#ef-county-list p{
  margin:2px 0 !important;
}

/* ---------- CARD ---------- */
#ef-county-list .ef-cse-card{
  position:relative;
  overflow:hidden;
  margin-bottom:0 !important;
  border-radius:var(--cse-card-radius);
  border:1px solid var(--cse-border);
  background:
    radial-gradient(120% 180% at 50% 0%, var(--cse-glow), rgba(214,177,93,0) 34%),
    radial-gradient(90% 120% at 0% 100%, rgba(255,255,255,.03), rgba(255,255,255,0) 28%),
    radial-gradient(90% 120% at 100% 0%, rgba(255,255,255,.025), rgba(255,255,255,0) 22%),
    linear-gradient(180deg, rgba(24,27,32,.96) 0%, rgba(9,11,14,.985) 100%);
  box-shadow:
    0 16px 40px rgba(0,0,0,.40),
    inset 0 1px 0 rgba(255,255,255,.05),
    inset 0 0 0 1px rgba(255,255,255,.02);
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, filter .18s ease;
}

#ef-county-list .ef-cse-card::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:var(--cse-card-radius-inner);
  border:1px solid var(--cse-border-soft);
  pointer-events:none;
  opacity:.72;
}

#ef-county-list .ef-cse-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 22%),
    linear-gradient(90deg, transparent 0%, rgba(214,177,93,.05) 50%, transparent 100%);
  mix-blend-mode:screen;
  opacity:.58;
}

#ef-county-list .ef-cse-card:hover{
  border-color:rgba(194,169,106,.22);
  box-shadow:
    0 20px 48px rgba(0,0,0,.46),
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 0 0 1px rgba(194,169,106,.05);
}

#ef-county-list .ef-cse-card.is-on{
  border-color:rgba(194,169,106,.34);
  box-shadow:
    0 22px 52px rgba(0,0,0,.50),
    0 0 0 1px rgba(194,169,106,.10),
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 0 0 1px rgba(194,169,106,.08);
}

/* ---------- HEADER ---------- */
#ef-county-list .ef-cse-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:14px 16px 4px;
  margin-bottom:0 !important;
}

#ef-county-list .ef-cse-head-left{
  min-width:0;
  flex:1 1 auto;
}

#ef-county-list .ef-cse-title{
  margin:0 0 2px !important;
  font-weight:850;
  letter-spacing:-.01em;
  color:rgba(255,255,255,.94);
  font-size:18px;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  text-shadow:0 1px 0 rgba(0,0,0,.45);
}

#ef-county-list .ef-cse-sub{
  margin:0 !important;
  font-size:11.5px;
  color:var(--cse-muted);
  line-height:1.05;
}

#ef-county-list .ef-cse-head-right{
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  min-width:120px;
  flex:0 0 auto;
}

#ef-county-list .ef-cse-price{
  font-weight:950;
  color:var(--cse-accent);
  white-space:nowrap;
  font-size:15px;
  line-height:1;
  padding-top:2px;
  text-shadow:0 1px 0 rgba(0,0,0,.55), 0 0 14px rgba(214,177,93,.08);
}

#ef-county-list .ef-cse-price.is-discounted{
  color:#f0d48a;
  text-shadow:0 1px 0 rgba(0,0,0,.55), 0 0 12px rgba(212,184,108,.18);
}

/* ---------- CONTROLS ---------- */
#ef-county-list .ef-cse-controls{
  padding:2px var(--cse-controls-pad-x) var(--cse-controls-pad-b);
}

#ef-county-list .ef-cse-controls-simple,
#ef-county-list .ef-cse-controls-children{
  padding-top:2px;
}

#ef-county-list .ef-cse-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:2px 0 var(--cse-row-gap);
  min-height:0 !important;
}

/* ---------- BUTTON / PILL SYSTEM ---------- */
#ef-county-list .ef-cse-btn,
#ef-county-list .ef-cse-entire-badge,
#ef-county-list .ef-cse-pill{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:var(--cse-chip-h);
  line-height:1;
  font-size:11px;
  font-weight:850;
  letter-spacing:.03em;
  text-transform:uppercase;
  white-space:nowrap;
  border-radius:10px;
}

#ef-county-list .ef-cse-btn,
#ef-county-list .ef-cse-entire-badge{
  padding:var(--cse-chip-pad-y) var(--cse-chip-pad-x);
  border:1px solid rgba(255,242,198,.18);
  background:
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
    rgba(0,0,0,.26);
  color:rgba(255,255,255,.88);
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 8px 18px rgba(0,0,0,.28);
  transition:transform .14s ease, filter .14s ease, border-color .14s ease, background .14s ease, box-shadow .14s ease;
}

#ef-county-list .ef-cse-btn:hover,
#ef-county-list .ef-cse-entire-badge:hover{
  filter:brightness(1.035);
  border-color:var(--cse-border-strong);
  background:
    linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.022)),
    rgba(0,0,0,.30);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 10px 22px rgba(0,0,0,.34);
  transform:translateY(-1px);
}

#ef-county-list .ef-cse-btn:active,
#ef-county-list .ef-cse-entire-badge:active{
  transform:translateY(1px);
}

#ef-county-list .ef-cse-btn-primary{
  background:linear-gradient(180deg, #ead79b 0%, #d6b15d 52%, #b68f44 100%);
  color:rgba(12,12,13,.92);
  border-color:rgba(255,242,198,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.34), 0 10px 20px rgba(0,0,0,.34);
}

#ef-county-list .ef-cse-btn-primary:hover{
  background:linear-gradient(180deg, #f0dfa8 0%, #dbb966 52%, #bd964b 100%);
  border-color:rgba(255,242,198,.34);
}

#ef-county-list .ef-cse-btn-ghost{
  background:
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.016)),
    rgba(255,255,255,.02);
  border-color:rgba(255,242,198,.14);
  color:rgba(255,255,255,.86);
}

#ef-county-list .ef-cse-pill{
  padding:4px 10px;
  border:1px solid rgba(255,242,198,.14);
  background:
    linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012)),
    rgba(0,0,0,.24);
  color:rgba(255,255,255,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 6px 14px rgba(0,0,0,.18);
}

#ef-county-list .ef-cse-pill.is-on{
  border-color:rgba(194,169,106,.34);
  color:rgba(255,242,198,.95);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 8px 18px rgba(0,0,0,.22), 0 0 0 1px rgba(194,169,106,.08);
}

/* ---------- NOTES ---------- */
#ef-county-list .ef-cse-denver-note,
#ef-county-list .ef-cse-discount-note{
  margin:0 0 10px;
  padding:10px 12px;
  border-radius:12px;
  font-size:12px;
  line-height:1.4;
  border:1px solid rgba(212,184,108,.28);
  background:linear-gradient(180deg, rgba(212,184,108,.10), rgba(212,184,108,.05));
  color:#e7d6a0;
  box-shadow:0 0 0 1px rgba(212,184,108,.08) inset;
}

#ef-county-list .ef-cse-denver-note{
  margin-bottom:12px;
  border-color:rgba(212,184,108,.42);
  background:linear-gradient(180deg, rgba(212,184,108,.16), rgba(212,184,108,.08));
  color:#f1df9f;
  font-size:13px;
  font-weight:600;
  line-height:1.45;
}

/* ---------- CHILDREN WRAP ---------- */
#ef-county-list .ef-cse-children-wrap{
  margin-top:8px;
  padding:10px;
  border-radius:14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.022), rgba(255,255,255,.008)),
    rgba(0,0,0,.16);
  border:1px solid rgba(255,242,198,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), inset 0 0 0 1px rgba(255,255,255,.015);
}

#ef-county-list .ef-cse-hint{
  margin-top:6px;
  font-size:11.5px;
  color:rgba(255,255,255,.58);
  line-height:1.35;
}

/* ---------- LEGACY SELECT ---------- */
#ef-county-list select.ef-cse-child-select{
  width:100%;
  min-height:180px;
  height:auto;
  border-radius:14px;
  padding:10px 12px;
  outline:none;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.050), rgba(255,255,255,.016)) !important;
  color:rgba(255,255,255,.90) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 10px 26px rgba(0,0,0,.36);
  background-image:linear-gradient(180deg, rgba(255,255,255,.050), rgba(255,255,255,.016)) !important;
  padding-right:12px !important;
}

#ef-county-list select.ef-cse-child-select option{
  background:#0b0f16 !important;
  color:rgba(255,255,255,.92) !important;
  padding:8px 10px;
}

#ef-county-list select.ef-cse-child-select option:checked{
  background:rgba(194,169,106,.28) !important;
  color:#fff !important;
}

/* ---------- OR DIVIDER ---------- */
#ef-county-list .ef-cse-or{
  display:flex;
  align-items:center;
  gap:12px;
  margin:4px 0;
  color:rgba(255,255,255,.62);
  font-weight:900;
  letter-spacing:.08em;
  font-size:10.5px;
  text-transform:uppercase;
}

#ef-county-list .ef-cse-or-line{
  flex:1;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,242,198,.18), rgba(255,255,255,0));
}

#ef-county-list .ef-cse-or-text{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:10px;
  border:1px solid rgba(255,242,198,.14);
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.012)),
    rgba(0,0,0,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 6px 14px rgba(0,0,0,.18);
  color:rgba(255,232,173,.90);
  padding:2px 7px !important;
  font-size:10px !important;
}

/* ---------- ENTIRE ROW ---------- */
#ef-county-list .ef-cse-entire{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:var(--cse-entire-h);
  text-align:left;
  border-radius:14px;
  padding:var(--cse-entire-pad-y) var(--cse-entire-pad-x);
  border:1px solid rgba(255,242,198,.16);
  background:
    radial-gradient(120% 180% at 100% 0%, rgba(214,177,93,.10), rgba(214,177,93,0) 38%),
    linear-gradient(180deg, rgba(255,255,255,.040), rgba(255,255,255,.014)),
    rgba(255,255,255,.022);
  color:rgba(255,255,255,.90);
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 10px 24px rgba(0,0,0,.28);
  transition:transform .14s ease, border-color .14s ease, background .14s ease, filter .14s ease, box-shadow .14s ease;
}

#ef-county-list .ef-cse-entire:hover{
  filter:brightness(1.02);
  transform:translateY(-1px);
  border-color:var(--cse-border-strong);
  background:
    radial-gradient(120% 180% at 100% 0%, rgba(214,177,93,.13), rgba(214,177,93,0) 40%),
    linear-gradient(180deg, rgba(255,255,255,.050), rgba(255,255,255,.018)),
    rgba(255,255,255,.028);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.065), 0 12px 28px rgba(0,0,0,.34);
}

#ef-county-list .ef-cse-entire:active{ transform:translateY(1px); }

#ef-county-list .ef-cse-entire.is-on{
  border-color:rgba(194,169,106,.40);
  box-shadow:0 14px 32px rgba(0,0,0,.38), 0 0 0 1px rgba(194,169,106,.10), inset 0 1px 0 rgba(255,255,255,.06);
}

#ef-county-list .ef-cse-entire-left{
  min-width:0;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:0 !important;
}

#ef-county-list .ef-cse-entire-title{
  display:block;
  margin:0 !important;
  font-weight:900;
  letter-spacing:-.01em;
  color:rgba(255,242,198,.94);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:13px;
  line-height:1.1;
}

#ef-county-list .ef-cse-entire-sub{
  display:block;
  margin:0 !important;
  font-size:11.5px;
  color:rgba(255,255,255,.62);
  line-height:1.05;
}

#ef-county-list .ef-cse-entire-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex:0 0 auto;
}

#ef-county-list .ef-cse-entire-price{
  font-weight:950;
  color:var(--cse-accent);
  font-size:15px;
  line-height:1;
  white-space:nowrap;
  text-shadow:0 1px 0 rgba(0,0,0,.55), 0 0 16px rgba(214,177,93,.10);
}

/* ---------- SIMPLE CARD CTA ---------- */
#ef-county-list .ef-cse-controls-simple .ef-cse-row{
  margin:0;
  padding:0;
}

#ef-county-list .ef-cse-controls-simple .ef-cse-btn-primary{
  min-width:0;
}

/* ---------- CHECKBOX KIDS ---------- */
#ef-county-list .ef-cse-kids{
  display:flex;
  flex-direction:column;
  gap:6px;
  max-height:300px;
  overflow:auto;
  padding:10px 10px 10px 12px;
  border-radius:14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.022), rgba(255,255,255,.008)),
    rgba(0,0,0,.14);
  box-shadow:inset 0 0 0 1px rgba(255,242,198,.08), inset 0 1px 0 rgba(255,255,255,.03);
}

#ef-county-list .ef-cse-kids::-webkit-scrollbar{ width:10px; }
#ef-county-list .ef-cse-kids::-webkit-scrollbar-track{ background:rgba(255,255,255,.03); border-radius:999px; }
#ef-county-list .ef-cse-kids::-webkit-scrollbar-thumb{
  background:rgba(255,242,198,.16);
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box;
}

#ef-county-list .ef-cse-kid{
  -webkit-appearance:none !important;
  appearance:none !important;
  width:100% !important;
  min-height:var(--cse-kid-h) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  text-align:left !important;
  cursor:pointer !important;
  padding:var(--cse-kid-pad-y) var(--cse-kid-pad-x) !important;
  border-radius:12px !important;
  border:1px solid rgba(255,242,198,.10) !important;
  outline:none !important;
  background:linear-gradient(180deg, rgba(255,255,255,.040), rgba(255,255,255,.014)) !important;
  background-color:rgba(0,0,0,.22) !important;
  color:var(--mi-ink) !important;
  -webkit-text-fill-color:var(--mi-ink) !important;
  box-shadow:inset 0 0 0 1px rgba(255,242,198,.05), 0 8px 20px rgba(0,0,0,.22) !important;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease !important;
}

#ef-county-list .ef-cse-kid:hover{
  transform:translateY(-1px);
  border-color:rgba(255,242,198,.18) !important;
  background:linear-gradient(180deg, rgba(255,255,255,.050), rgba(255,255,255,.018)) !important;
  background-color:rgba(0,0,0,.26) !important;
  box-shadow:inset 0 0 0 1px rgba(255,242,198,.10), 0 12px 24px rgba(0,0,0,.28) !important;
}

#ef-county-list .ef-cse-kid:active{ transform:translateY(1px); }

#ef-county-list .ef-cse-kid.is-on{
  border-color:rgba(194,169,106,.28) !important;
  background:linear-gradient(180deg, rgba(255,242,198,.08), rgba(255,255,255,.016)) !important;
  background-color:rgba(0,0,0,.28) !important;
  box-shadow:inset 0 0 0 1px rgba(255,242,198,.14), 0 14px 28px rgba(0,0,0,.30) !important;
}

#ef-county-list .ef-cse-kid-left{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  flex:1 1 auto;
}

#ef-county-list .ef-cse-kid-check{
  width:14px;
  height:14px;
  border-radius:4px;
  border:1px solid rgba(255,242,198,.28);
  background:rgba(0,0,0,.35);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  flex:0 0 auto;
}

#ef-county-list .ef-cse-kid-check.is-on{
  background:linear-gradient(180deg, rgba(255,242,198,.97), rgba(201,170,92,.92));
  border-color:rgba(255,242,198,.58);
  box-shadow:0 6px 14px rgba(0,0,0,.28);
}

#ef-county-list .ef-cse-kid-title{
  color:rgba(255,255,255,.91) !important;
  -webkit-text-fill-color:rgba(255,255,255,.91) !important;
  font-weight:675;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

#ef-county-list .ef-cse-kid-right{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  color:rgba(255,255,255,.70) !important;
  font-size:11.5px;
}

#ef-county-list .ef-cse-kid-rec{
  color:rgba(255,255,255,.58) !important;
  white-space:nowrap;
}

#ef-county-list .ef-cse-kid-price{
  color:rgba(255,242,198,.93) !important;
  font-weight:850;
  font-size:12px;
  white-space:nowrap;
}

#ef-county-list .ef-cse-kid.ef-cse-kid-denver{
  min-height:40px !important;
  padding-top:7px !important;
  padding-bottom:7px !important;
}

#ef-county-list .ef-cse-kid.ef-cse-kid-denver .ef-cse-kid-title{
  line-height:1.18;
}

#ef-county-list .ef-cse-kid.ef-cse-kid-denver .ef-cse-kid-right{
  gap:8px;
}

#ef-county-list .ef-cse-empty{
  padding:10px 12px;
  color:rgba(255,255,255,.56);
  font-size:11.5px;
}

/* ---------- RESPONSIVE ---------- */
@media (max-width:768px){
  #ef-county-list{
    --cse-gap:12px;
    --cse-controls-pad-x:14px;
    --cse-controls-pad-b:12px;
    gap:var(--cse-gap);
  }

  #ef-county-list .ef-cse-header{
    padding:14px 14px 6px;
    gap:12px;
  }

  #ef-county-list .ef-cse-title{
    font-size:16px;
    white-space:normal;
  }

  #ef-county-list .ef-cse-price,
  #ef-county-list .ef-cse-entire-price{
    font-size:14px;
  }

  #ef-county-list .ef-cse-row{
    gap:10px;
    flex-wrap:wrap;
  }

  #ef-county-list .ef-cse-btn,
  #ef-county-list .ef-cse-entire-badge,
  #ef-county-list .ef-cse-pill{
    min-height:30px;
    padding:6px 11px;
    font-size:10px;
  }

  #ef-county-list .ef-cse-entire{
    min-height:54px;
    padding:9px 11px;
    gap:10px;
  }

  #ef-county-list .ef-cse-entire-title{
    font-size:12px;
    white-space:normal;
  }

  #ef-county-list .ef-cse-children-wrap{
    padding:10px;
  }
}

/* =========================================================
   19) WOOCOMMERCE NOTICES
========================================================= */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
  position:relative;
  border-radius:14px;
  padding:16px 20px;
  margin:18px 0;
  border:1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(120% 160% at 15% 0%, rgba(255,255,255,.05), rgba(255,255,255,0) 55%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015)),
    rgba(0,0,0,.35);
  box-shadow:
    0 12px 34px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.06);
  color:rgba(255,255,255,.90);
  font-size:14px;
  line-height:1.5;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before{
  display:none !important;
}

.woocommerce-message{
  border-left:3px solid rgba(92,255,176,.8);
}

.woocommerce-info{
  border-left:3px solid rgba(138,200,255,.8);
}

.woocommerce-error{
  border-left:3px solid rgba(255,108,108,.85);
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a{
  color:#ffd27a;
  text-decoration:none;
  font-weight:500;
}

.woocommerce-message a:hover,
.woocommerce-info a:hover,
.woocommerce-error a:hover{
  text-decoration:underline;
}

/* =========================================================
   20) EFM HEADER ACCOUNT MENU
========================================================= */
.ef-account-menu{
  position:relative;
  display:inline-block;
}

.ef-account-trigger{
  appearance:none;
  -webkit-appearance:none;
  background:none;
  border:1px solid rgba(212,175,55,.35);
  border-radius:10px;
  padding:8px 12px;
  color:#f5efe2;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  line-height:1;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
    rgba(0,0,0,.35);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 8px 20px rgba(0,0,0,.28);
  transition:all .18s ease;
}

.ef-account-trigger:hover{
  border-color:rgba(212,175,55,.55);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 10px 24px rgba(0,0,0,.34),
    0 0 0 1px rgba(212,175,55,.08);
}

.ef-user-name{
  white-space:nowrap;
}

.ef-caret{
  font-size:12px;
  opacity:.9;
}

.ef-account-dropdown{
  position:absolute;
  right:0;
  top:calc(100% + 10px);
  min-width:190px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)),
    rgba(8,10,16,.96);
  backdrop-filter:blur(10px);
  border:1px solid rgba(212,175,55,.22);
  border-radius:12px;
  padding:8px 0;
  display:none;
  box-shadow:
    0 18px 40px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.05);
  z-index:9999;
}

.ef-account-dropdown.open{
  display:block;
}

.ef-account-dropdown a{
  display:block;
  padding:10px 14px;
  text-decoration:none;
  color:#e7dcc2;
  font-size:14px;
  transition:background .15s ease, color .15s ease;
}

.ef-account-dropdown a:hover{
  background:rgba(212,175,55,.08);
  color:#fff4cf;
}

.ef-divider{
  height:1px;
  margin:6px 10px;
  background:rgba(212,175,55,.16);
}

.ef-logout{
  color:#ffb0a8;
}

.ef-logout:hover{
  color:#ffd2cb;
}

/* =========================================================
   21) FORM 9 TOOLTIP
========================================================= */
.ff9-tooltip{
  position:fixed;
  max-width:420px;
  padding:16px 18px;
  border-radius:14px;
  border:1px solid rgba(255,215,130,.28);
  background:linear-gradient(180deg, rgba(20,20,22,.96), rgba(10,10,12,.94));
  color:#f3e7c2;
  font-size:14px;
  line-height:1.45;
  backdrop-filter:blur(12px);
  box-shadow:0 18px 48px rgba(0,0,0,.45);
}

.ff9-tooltip strong{
  display:block;
  margin-bottom:6px;
  color:#fff3cc;
}

.ff9-tooltip button{
  margin-top:12px;
  padding:8px 14px;
  border-radius:8px;
  border:1px solid rgba(255,215,130,.35);
  background:linear-gradient(
    180deg,
    rgba(255,215,130,.16),
    rgba(255,215,130,.06)
  );
  color:#fff1c8;
  cursor:pointer;
  transition:all .15s ease;
}

.ff9-tooltip button:hover{
  border-color:rgba(255,215,130,.55);
  box-shadow:0 0 10px rgba(255,215,130,.35);
}

#frm_form_9_container.ff-js-ready,
#frm_form_9_container.ff-js-ready .frm_forms,
#frm_form_9_container.ff-js-ready .frm-show-form,
#frm_form_9_container.ff-js-ready .frm_fields_container,
#frm_form_9_container.ff-js-ready .frm_form_fields{
  visibility:visible !important;
  opacity:1 !important;
}

/* =========================================================
   FF9 Conditional Boot Suppression
========================================================= */
body.ff9-cond-booting .frm-show-form .frm_conditional_logic,
body.ff9-cond-booting .frm_show-form .frm_hidden_container,
body.ff9-cond-booting .frm-show-form .frm_hidden_container{
  visibility:hidden !important;
}

/* =========================================================
   Standalone Checkout Stage
========================================================= */
#efm-standalone-checkout-mount{
  display:none;
}

#efm-standalone-checkout-mount.efm-checkout-live{
  display:block !important;
  width:100%;
}

.efm-payment-active #frm_field_344_container,
.efm-payment-active #frm_field_590_container,
.efm-payment-active .frm_form_field.checkout-submit.efm-old-payment-hidden,
.efm-payment-active .ff-panel.checkout-submit.efm-old-payment-hidden{
  display:none !important;
}

.efm-payment-active #efm-standalone-checkout-mount{
  margin-top:0;
}

.efm-payment-active #efm-standalone-checkout-mount .ef-woo-checkout-mount,
.efm-payment-active #efm-standalone-checkout-mount #ef-woo-checkout-panel{
  width:100%;
}

.efm-payment-active #efm-standalone-checkout-mount .efm-checkout-shell{
  margin-top:0;
}

.efm-payment-active .frm_fields_container,
.efm-payment-active .frm_form_fields{
  overflow:visible;
}

.efm-payment-active .elementor-widget-shortcode{
  display:none !important;
}



/* =========================================================
   22) CANONICAL OPTIONS TAB SYSTEM
   Final clean implementation: parent intro panels, borderless child controls,
   custom intro badges, repeater cleanup, fade handoff, and section dividers
========================================================= */

/* --- Wrapper hygiene --- */
.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block{
  position:relative;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block::before,
.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block::after,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block::before,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block::after,
.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block .frm_primary_label::before,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_primary_label::before{
  content:none !important;
  display:none !important;
  background:none !important;
  box-shadow:none !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block{
  margin:0 0 6px 0 !important;
  padding:0 !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block .frm_html_container,
.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block .frm_form_field{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* --- Parent intro panels --- */
.ef-form-shell #frm_form_9_container .efm-option-intro{
  position:relative;
  padding:18px 22px 0 22px !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.020) 0%,
      rgba(255,255,255,.013) 34%,
      rgba(255,255,255,.006) 58%,
      rgba(255,255,255,.002) 76%,
      rgba(255,255,255,0) 100%
    ),
    radial-gradient(140% 220% at 20% -10%, rgba(255,242,198,.05) 0%, rgba(255,242,198,0) 44%),
    radial-gradient(100% 180% at 82% 10%, rgba(216,191,122,.04) 0%, rgba(216,191,122,0) 48%) !important;
}

.ef-form-shell #frm_form_9_container .efm-option-intro::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:18px;
  pointer-events:none;
  background:linear-gradient(
    180deg,
    rgba(7,10,16,0) 0%,
    rgba(7,10,16,.10) 48%,
    rgba(7,10,16,.22) 78%,
    rgba(7,10,16,0) 100%
  ) !important;
  opacity:.22;
}

.ef-form-shell #frm_form_9_container .efm-option-intro::after{
  content:none !important;
  display:none !important;
}

.ef-form-shell #frm_form_9_container .efm-option-intro__topline{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:8px;
}

.ef-form-shell #frm_form_9_container .efm-option-intro__chevron{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:14px;
  height:14px;
  flex:0 0 auto;
  color:rgba(255,242,198,.82);
  font-size:17px;
  line-height:1;
  transform:translateY(-1px);
  text-shadow:0 0 8px rgba(216,191,122,.18);
}

.ef-form-shell #frm_form_9_container .efm-option-intro__eyebrow{
  font-size:16px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:rgba(216,191,122,.96);
  text-shadow:0 1px 0 rgba(0,0,0,.65), 0 0 14px rgba(216,191,122,.12);
}

.ef-form-shell #frm_form_9_container .efm-option-intro__headline{
  margin:0 0 4px 0;
  font-size:13px;
  line-height:1.28;
  font-weight:800;
  color:rgba(255,255,255,.92);
  max-width:900px;
}

.ef-form-shell #frm_form_9_container .efm-option-intro__details{
  margin:0;
  font-size:11px;
  line-height:1.44;
  color:rgba(255,255,255,.66);
  max-width:980px;
}

/* Featured launch variant */
.ef-form-shell #frm_form_9_container .efm-option-intro--featured{
  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.024) 0%,
      rgba(255,255,255,.015) 34%,
      rgba(255,255,255,.007) 58%,
      rgba(255,255,255,.002) 76%,
      rgba(255,255,255,0) 100%
    ),
    radial-gradient(circle at 18% 0%, rgba(255,242,198,.10), transparent 34%),
    radial-gradient(circle at 82% 0%, rgba(216,191,122,.06), transparent 28%) !important;
}

.ef-form-shell #frm_form_9_container .efm-option-intro--featured .efm-option-intro__eyebrow{
  font-size:17px;
  color:rgba(255,242,198,.96);
}

.ef-form-shell #frm_form_9_container .efm-option-intro--featured .efm-option-intro__headline{
  font-size:20px;
  line-height:1.16;
  font-weight:900;
  margin:0 0 8px 0;
  color:#fff6df;
  text-shadow:0 1px 0 rgba(0,0,0,.45), 0 0 18px rgba(255,228,150,.08);
}

.ef-form-shell #frm_form_9_container .efm-option-intro--featured .efm-option-intro__details{
  font-size:13px;
  line-height:1.52;
  color:rgba(255,255,255,.76);
}

/* Intro badges live only in the HTML intro */
.ef-form-shell #frm_form_9_container .efm-option-intro__badge{
  position:absolute;
  top:18px;
  right:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:74px;
  height:20px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(255,242,198,.16);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 4px 10px rgba(0,0,0,.18);
  color:rgba(255,255,255,.84);
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  line-height:1;
  text-transform:uppercase;
  white-space:nowrap;
  pointer-events:none;
}

.ef-form-shell #frm_form_9_container .efm-option-intro--featured .efm-option-intro__badge{
  background:linear-gradient(180deg, rgba(255,242,198,.20), rgba(216,191,122,.08));
  border-color:rgba(255,242,198,.24);
  color:rgba(255,248,230,.96);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 6px 14px rgba(0,0,0,.18), 0 0 14px rgba(255,228,150,.10);
}

/* --- Child controls: quieter, narrower, tighter --- */
.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block + .frm_form_field.option-choice-block,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block.option-choice-block--launch,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block.option-choice-block--resend,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block.option-choice-block--commission,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block.option-choice-block--facebook{
  width:calc(100% - 40px);
  margin-left:20px !important;
  margin-right:20px !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block + .frm_form_field.option-choice-block,
.ef-form-shell #frm_form_9_container .option-intro-block + .option-choice-block{
  margin-top:0 !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block{
  margin-bottom:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_primary_label{
  position:relative !important;
  padding-right:0 !important;
  margin:0 0 2px 0 !important;
  font-size:13px !important;
  line-height:1.24 !important;
  font-weight:800 !important;
  color:rgba(255,255,255,.90) !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_opt_container,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_radio,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_checkbox,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_inputs,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .vertical_radio,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_forms,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_input_container{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_radio,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_checkbox{
  margin:0 0 4px 0 !important;
  padding:0 !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_description{
  display:none !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_required,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block .frm_important,
.ef-form-shell #frm_form_9_container .option-choice-block .frm_primary_label .frm_required:empty,
.ef-form-shell #frm_form_9_container .option-choice-block[data-efm-badge]::before,
.ef-form-shell #frm_form_9_container .option-choice-block[data-efm-badge]::after,
.ef-form-shell #frm_form_9_container .option-choice-block [class*="badge"],
.ef-form-shell #frm_form_9_container .option-choice-block .efm-badge{
  display:none !important;
  content:none !important;
}

/* Child inputs retain luxury treatment */
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block input[type="text"],
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block input[type="email"],
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block input[type="tel"],
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block input[type="url"],
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block input[type="number"],
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block input[type="search"],
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block input[type="date"],
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block textarea,
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block select{
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 8px 22px rgba(0,0,0,.26) !important;
}



/* --- Section dividers and spacing between modules --- */
.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block + .frm_form_field.option-intro-block,
.ef-form-shell #frm_form_9_container .option-choice-block + .option-intro-block{
  margin-top:24px !important;
  padding-top:14px !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block + .frm_form_field.option-intro-block::before,
.ef-form-shell #frm_form_9_container .option-choice-block + .option-intro-block::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:18px !important;
  right:18px !important;
  top:0 !important;
  height:1px !important;
  background:linear-gradient(
    90deg,
    rgba(255,242,198,0) 0%,
    rgba(216,191,122,.18) 18%,
    rgba(255,242,198,.12) 50%,
    rgba(216,191,122,.18) 82%,
    rgba(255,242,198,0) 100%
  ) !important;
  box-shadow:0 0 10px rgba(216,191,122,.05) !important;
  pointer-events:none !important;
}

.ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block + .frm_form_field.option-choice-block,
.ef-form-shell #frm_form_9_container .option-choice-block + .option-choice-block{
  margin-top:4px !important;
}

/* --- Mobile --- */
@media (max-width:767px){
  .ef-form-shell #frm_form_9_container .efm-option-intro{
    padding:16px 16px 0 16px !important;
  }

  .ef-form-shell #frm_form_9_container .efm-option-intro__eyebrow{
    font-size:14px;
  }

  .ef-form-shell #frm_form_9_container .efm-option-intro__headline{
    font-size:12px;
  }

  .ef-form-shell #frm_form_9_container .efm-option-intro__details{
    font-size:11px;
  }

  .ef-form-shell #frm_form_9_container .efm-option-intro--featured .efm-option-intro__headline{
    font-size:16px;
  }

  .ef-form-shell #frm_form_9_container .frm_form_field.option-intro-block + .frm_form_field.option-choice-block,
  .ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block.option-choice-block--launch,
  .ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block.option-choice-block--resend,
  .ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block.option-choice-block--commission,
  .ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block.option-choice-block--facebook{
    width:calc(100% - 24px);
    margin-left:12px !important;
    margin-right:12px !important;
  }

  .ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block + .frm_form_field.option-intro-block,
  .ef-form-shell #frm_form_9_container .option-choice-block + .option-intro-block{
    margin-top:20px !important;
    padding-top:12px !important;
  }

  .ef-form-shell #frm_form_9_container .frm_form_field.option-choice-block + .frm_form_field.option-intro-block::before,
  .ef-form-shell #frm_form_9_container .option-choice-block + .option-intro-block::before{
    left:12px !important;
    right:12px !important;
  }
}


/* =========================================================
   CHECKOUT OVERRIDE - AGGRESSIVE TARGETING
========================================================= */

/* Coupon */
.woocommerce form.checkout_coupon,
.woocommerce .checkout_coupon,
.ef-checkout-wrap form.checkout_coupon,
.ef-checkout-wrap .checkout_coupon{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  padding:0 !important;
  margin:0 0 18px 0 !important;
  background:transparent !important;
  border:0 !important;
}

.woocommerce form.checkout_coupon input.input-text,
.woocommerce .checkout_coupon input.input-text,
.ef-checkout-wrap form.checkout_coupon input.input-text,
.ef-checkout-wrap .checkout_coupon input.input-text,
input[name="coupon_code"]{
  height:42px !important;
  min-height:42px !important;
  padding:8px 12px !important;
  border-radius:10px !important;
  font-size:14px !important;
  width:180px !important;
}

.woocommerce form.checkout_coupon button.button,
.woocommerce .checkout_coupon button.button,
.ef-checkout-wrap form.checkout_coupon button.button,
.ef-checkout-wrap .checkout_coupon button.button,
button[name="apply_coupon"]{
  height:42px !important;
  min-height:42px !important;
  padding:0 16px !important;
  border-radius:10px !important;
  font-size:14px !important;
  font-weight:800 !important;
  background:linear-gradient(180deg, rgba(241,223,171,.98) 0%, rgba(196,162,84,.92) 100%) !important;
  color:#0a0d14 !important;
  border:1px solid rgba(214,177,93,.34) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.28) !important;
}

/* Order total pill/plaque */
.woocommerce-checkout-review-order-table tfoot tr.order-total td strong,
.woocommerce-checkout-review-order-table tfoot tr.order-total td .amount,
.woocommerce-checkout-review-order-table tfoot tr.order-total td .woocommerce-Price-amount,
.ef-checkout-wrap .order-total strong,
.ef-checkout-wrap .order-total .amount,
.ef-checkout-wrap .order-total .woocommerce-Price-amount{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  min-width:220px !important;
  min-height:58px !important;
  padding:0 24px !important;
  border-radius:999px !important;
  border:1px solid rgba(214,177,93,.28) !important;
  background:
    radial-gradient(circle at 50% -30%, rgba(255,242,198,.12), transparent 55%),
    linear-gradient(180deg, rgba(24,28,38,.94) 0%, rgba(10,13,20,.98) 100%) !important;
  box-shadow:
    0 14px 32px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.05),
    inset 0 0 24px rgba(214,177,93,.05) !important;
  color:rgba(255,245,222,.98) !important;
  font-size:32px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

.woocommerce-checkout-review-order-table tfoot tr.order-total td strong::before,
.woocommerce-checkout-review-order-table tfoot tr.order-total td .amount::before,
.woocommerce-checkout-review-order-table tfoot tr.order-total td .woocommerce-Price-amount::before,
.ef-checkout-wrap .order-total strong::before,
.ef-checkout-wrap .order-total .amount::before,
.ef-checkout-wrap .order-total .woocommerce-Price-amount::before{
  content:'ORDER TOTAL' !important;
  display:inline-block !important;
  color:rgba(255,235,186,.78) !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  margin-right:4px !important;
}

/* Snapshot shell */
.ef-woo-checkout-panel,
.ef-woo-checkout-mount,
.ef-checkout-snapshot,
.ef-session-snapshot,
.campaign-details-snapshot{
  margin-top:14px !important;
}

.ef-woo-checkout-panel > div,
.ef-woo-checkout-mount > div,
.ef-checkout-snapshot,
.ef-session-snapshot,
.campaign-details-snapshot{
  border:1px solid rgba(214,177,93,.18) !important;
  border-radius:18px !important;
  background:
    linear-gradient(180deg, rgba(52,49,41,.52) 0%, rgba(20,23,31,.68) 44%, rgba(7,10,17,.88) 100%) !important;
  box-shadow:
    0 18px 36px rgba(0,0,0,.32),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
  overflow:hidden !important;
}

/* Snapshot inner scroll area */
.ef-woo-checkout-panel [style*="overflow"],
.ef-woo-checkout-mount [style*="overflow"],
.ef-checkout-wrap [style*="overflow-y: auto"],
.ef-checkout-wrap [style*="overflow: auto"]{
  border-radius:14px !important;
}

/* Submit / Complete Order button */
#place_order,
.woocommerce #payment #place_order,
.ef-checkout-wrap #place_order,
.ef-checkout-wrap .place-order .button,
.woocommerce-checkout #payment .button{
  width:100% !important;
  min-height:24px !important;
  padding:18px 24px !important;
  border-radius:16px !important;
  border:1px solid rgba(214,177,93,.38) !important;
  background:
    linear-gradient(180deg, rgba(255,247,214,.98) 0%, rgba(226,204,146,.96) 36%, rgba(193,157,76,.94) 100%) !important;
  color:#06080d !important;
  font-size:16px !important;
  font-weight:900 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
  box-shadow:
    0 16px 34px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.40),
    inset 0 -1px 0 rgba(122,88,24,.32) !important;
}

#place_order:hover,
.woocommerce #payment #place_order:hover,
.ef-checkout-wrap #place_order:hover,
.ef-checkout-wrap .place-order .button:hover,
.woocommerce-checkout #payment .button:hover{
  transform:translateY(-2px) !important;
  box-shadow:
    0 22px 42px rgba(0,0,0,.50),
    inset 0 1px 0 rgba(255,255,255,.45),
    inset 0 -1px 0 rgba(122,88,24,.35) !important;
}


/* =========================================================
   Checkout Snapshot - Elegant Row Refinement
========================================================= */

.ef-woo-checkout-mount .efm-checkout-debug__scroll{
  padding: 10px 14px 12px 14px !important;
}

.ef-woo-checkout-mount .efm-checkout-debug__section{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.ef-woo-checkout-mount .efm-checkout-debug__table{
  width: 100% !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
}

.ef-woo-checkout-mount .efm-checkout-debug__table tbody tr{
  border-bottom: 1px solid rgba(255,215,130,0.07) !important;
}

.ef-woo-checkout-mount .efm-checkout-debug__table tbody tr:last-child{
  border-bottom: 0 !important;
}

.ef-woo-checkout-mount .efm-checkout-debug__table th,
.ef-woo-checkout-mount .efm-checkout-debug__table td{
  margin: 0 !important;
  padding: 8px 0 !important;
  vertical-align: middle !important;
  line-height: 1.25 !important;
}

/* Narrower, cleaner label column */
.ef-woo-checkout-mount .efm-checkout-debug__table th{
  width: 32% !important;
  padding-right: 14px !important;
  color: rgba(243,234,210,0.82) !important;
  font-size: 0.84rem !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  word-break: normal !important;
}

/* Value column starts closer, feels tighter */
.ef-woo-checkout-mount .efm-checkout-debug__table td{
  width: 68% !important;
  color: #f3ead2 !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  padding-left: 6px !important;
  word-break: break-word !important;
}

/* Remove extra visual clutter from inherited borders */
.ef-woo-checkout-mount .efm-checkout-debug__table th,
.ef-woo-checkout-mount .efm-checkout-debug__table td{
  border: 0 !important;
  box-shadow: none !important;
}

/* Softer empty placeholder */
.ef-woo-checkout-mount .efm-checkout-debug__empty{
  color: rgba(243,234,210,0.36) !important;
  font-style: normal !important;
}

/* Slightly calmer overall panel feel */
.ef-woo-checkout-mount .efm-checkout-debug{
  border-color: rgba(255,215,130,0.12) !important;
}

.ef-woo-checkout-mount .efm-checkout-debug__head{
  padding: 12px 14px 10px 14px !important;
}

.ef-woo-checkout-mount .efm-checkout-debug__title{
  margin: 0 !important;
  font-size: 0.98rem !important;
  letter-spacing: 0.01em !important;
}

/* Coupon row alignment */
.ef-woo-checkout-mount .efm-checkout-coupon__row{
  display: flex !important;
  align-items: center !important;
  gap: 10px;
}

/* Ensure both elements share same height baseline */
.ef-woo-checkout-mount .efm-checkout-coupon input.input-text{
  height: 42px !important;
  display: flex;
  align-items: center;
}

.ef-woo-checkout-mount .efm-checkout-coupon button{
  height: 42px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px !important;
}

/* =========================================================
   RESEND ORDER PICKER - PREMIUM COMPACT
========================================================= */

#efm-resend-orders-list{
  margin-top:18px;
  padding:12px 0 6px;
}

.efm-resend-headline{
  margin:0 0 14px;
  padding:0 2px;
}

.efm-resend-headline-title{
  font-size:16px;
  font-weight:700;
  line-height:1.2;
  color:#f4ead0;
  letter-spacing:.02em;
}

.efm-resend-headline-sub{
  margin-top:4px;
  font-size:12px;
  line-height:1.45;
  color:rgba(243,234,210,.70);
}

.efm-resend-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  max-height:460px;
  overflow:auto;
  padding:2px 6px 10px 2px;
}

.efm-resend-grid::-webkit-scrollbar{
  width:10px;
}

.efm-resend-grid::-webkit-scrollbar-track{
  background:rgba(255,255,255,.04);
  border-radius:999px;
}

.efm-resend-grid::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg, rgba(212,177,93,.58), rgba(120,96,44,.74));
  border-radius:999px;
  border:2px solid rgba(0,0,0,.24);
}

.efm-resend-order-card{
  appearance:none;
  border:1px solid rgba(212,177,93,.22);
  background:
    radial-gradient(circle at top left, rgba(212,177,93,.10), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,.015) 100%),
    rgba(11,13,17,.88);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border-radius:18px;
  padding:0;
  text-align:left;
  color:#f4ecda;
  cursor:pointer;
  width:100%;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 10px 24px rgba(0,0,0,.24);
  transition:
    transform .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

.efm-resend-order-card:hover,
.efm-resend-order-card:focus{
  transform:translateY(-2px);
  border-color:rgba(229,196,114,.52);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 16px 34px rgba(0,0,0,.34),
    0 0 0 1px rgba(212,177,93,.10);
  outline:none;
}

.efm-resend-card-shell{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:14px;
  align-items:stretch;
  padding:14px;
}

.efm-resend-thumb{
  width:96px;
  min-width:96px;
  height:128px;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(212,177,93,.18);
  background:rgba(255,255,255,.03);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.efm-resend-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.efm-resend-thumb--empty{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:10px;
  color:rgba(243,234,210,.42);
  font-size:11px;
  line-height:1.35;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.efm-resend-card-main{
  min-width:0;
  display:flex;
  flex-direction:column;
}

.efm-resend-order-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}

.efm-resend-order-number{
  font-size:15px;
  font-weight:700;
  color:#f7eed8;
  line-height:1.2;
}

.efm-resend-order-date{
  font-size:11px;
  font-weight:600;
  color:rgba(243,234,210,.62);
  white-space:nowrap;
  padding-top:2px;
}

.efm-resend-address{
  font-size:13px;
  line-height:1.45;
  color:rgba(248,241,226,.92);
  margin-bottom:6px;
}

.efm-resend-address.is-empty{
  color:rgba(243,234,210,.42);
  font-style:italic;
}

.efm-resend-subject{
  font-size:12px;
  line-height:1.45;
  color:#e7d7a3;
  margin-bottom:10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.efm-resend-subject.is-empty{
  color:rgba(243,234,210,.40);
  font-style:italic;
}

.efm-resend-meta{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:8px 14px;
  margin-top:auto;
  margin-bottom:10px;
}

.efm-resend-meta-item{
  display:flex;
  flex-direction:column;
  gap:3px;
  border-top:1px solid rgba(212,177,93,.10);
  padding-top:8px;
  min-width:0;
}

.efm-resend-meta-label{
  font-size:10px;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:rgba(243,234,210,.52);
}

.efm-resend-meta-value{
  font-size:12px;
  font-weight:700;
  color:#f5edd8;
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.efm-resend-meta-value.efm-status{
  color:#d7bf79;
  text-transform:capitalize;
}

.efm-resend-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:10px;
  border-top:1px solid rgba(212,177,93,.16);
}

.efm-resend-cta-text{
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#f1e4bd;
}

.efm-resend-cta-arrow{
  font-size:16px;
  line-height:1;
  color:#d8be76;
}

.efm-loading-orders,
.efm-no-orders{
  border:1px dashed rgba(212,177,93,.26);
  border-radius:16px;
  padding:16px 18px;
  background:rgba(255,255,255,.025);
  color:rgba(243,234,210,.76);
  font-size:13px;
  line-height:1.5;
}

#frm_field_340_container .efm-resend-orders-list{
  margin-top:14px;
}

@media (max-width: 860px){
  .efm-resend-card-shell{
    grid-template-columns:78px minmax(0,1fr);
    gap:12px;
  }

  .efm-resend-thumb{
    width:78px;
    min-width:78px;
    height:104px;
  }

  .efm-resend-meta{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   EFM My Account - Reorders
========================================================= */

.efm-reorders-page{
  width:100%;
  color:#f3efe7;
}

.ef-reorders-wrap{
  width:100%;
}

.ef-reorders-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin:0 0 18px;
  padding:0 0 14px;
  border-bottom:1px solid rgba(212,177,93,.18);
}

.ef-reorders-header-copy h2{
  margin:0 0 8px;
  font-size:clamp(2rem, 3vw, 2.6rem);
  line-height:1.04;
  font-weight:700;
  letter-spacing:-0.02em;
  color:#f6f1e8;
}

.ef-reorders-header-copy p{
  margin:0;
  font-size:1rem;
  line-height:1.5;
  color:rgba(243,239,231,.72);
}

.ef-reorders-header-cta{
  flex:0 0 auto;
}

.ef-reorders-list{
  display:grid;
  gap:18px;
}

/* =========================================================
   Reorder Card
========================================================= */

.ef-reorder-card{
  display:grid;
  grid-template-columns:120px minmax(0,1fr) auto;
  gap:20px;
  align-items:center;
  padding:18px 20px;
  border:1px solid rgba(212,177,93,.16);
  border-radius:20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.03) 0%, rgba(255,255,255,.012) 100%),
    linear-gradient(135deg, rgba(212,177,93,.055) 0%, rgba(212,177,93,.018) 30%, rgba(255,255,255,.01) 100%),
    rgba(10,10,12,.90);
  box-shadow:
    0 10px 28px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.ef-reorder-card:hover{
  transform:translateY(-1px);
  border-color:rgba(212,177,93,.30);
  box-shadow:
    0 14px 34px rgba(0,0,0,.34),
    0 0 0 1px rgba(212,177,93,.07) inset;
}

/* =========================================================
   Preview
========================================================= */

.ef-reorder-preview{
  width:120px;
  align-self:center;
}

.ef-reorder-thumb,
.ef-reorder-thumb-placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  width:120px;
  height:154px;
  border-radius:14px;
  box-sizing:border-box;
}

.ef-reorder-thumb{
  display:block;
  object-fit:cover;
  background:#101114;
  border:1px solid rgba(212,177,93,.16);
  box-shadow:
    0 8px 22px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.04);
}

.ef-reorder-thumb-placeholder{
  background:
    linear-gradient(180deg, rgba(255,255,255,.022) 0%, rgba(255,255,255,.008) 100%),
    rgba(10,10,12,.90);
  border:1px dashed rgba(212,177,93,.20);
  color:rgba(243,239,231,.46);
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  text-align:center;
  padding:10px;
}

.ef-reorder-file-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  padding:14px 12px;
  text-decoration:none;
  color:#f3efe7;
  background:
    linear-gradient(180deg, rgba(255,255,255,.025) 0%, rgba(255,255,255,.01) 100%),
    rgba(10,10,12,.86);
  border:1px solid rgba(212,177,93,.16);
  box-sizing:border-box;
}

.ef-reorder-file-card:hover{
  border-color:rgba(212,177,93,.30);
  color:#fff;
}

.ef-reorder-file-card-pdf{
  background:
    radial-gradient(circle at top, rgba(212,177,93,.10), transparent 45%),
    linear-gradient(180deg, rgba(255,255,255,.025) 0%, rgba(255,255,255,.01) 100%),
    rgba(10,10,12,.90);
}

.ef-reorder-file-ext{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(212,177,93,.12);
  border:1px solid rgba(212,177,93,.22);
  color:#f0d79a;
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ef-reorder-file-name{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:.88rem;
  line-height:1.35;
  color:#f8f4ec;
  word-break:break-word;
}

.ef-reorder-file-cta{
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(243,239,231,.62);
}

/* =========================================================
   Main Content
========================================================= */

.ef-reorder-main{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
}

.ef-reorder-topline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin:0;
}

.ef-reorder-title-wrap{
  min-width:0;
}

.ef-reorder-kicker{
  margin:0 0 6px;
  font-size:.72rem;
  line-height:1;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(212,177,93,.88);
}

.ef-reorder-title{
  margin:0;
  font-size:1.12rem;
  line-height:1.18;
  font-weight:700;
  color:#f8f4ec;
}

.ef-reorder-meta{
  display:flex;
  flex-direction:column;
  gap:9px;
  min-width:0;
}

.ef-reorder-meta-row{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:10px;
  align-items:start;
  min-width:0;
}

.ef-reorder-meta-label{
  padding-top:1px;
  font-size:.76rem;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.04em;
  text-transform:none;
  color:rgba(243,239,231,.62);
}

.ef-reorder-meta-value{
  min-width:0;
  font-size:.95rem;
  line-height:1.42;
  color:rgba(248,244,236,.96);
}

.ef-reorder-meta-value--singleline{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ef-reorder-meta-value--multiline{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  white-space:normal;
  max-width:100%;
}

.ef-reorder-sub{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  padding-top:2px;
}

.ef-reorder-detail{
  display:flex;
  align-items:baseline;
  gap:8px;
}

.ef-reorder-detail-label{
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(243,239,231,.48);
}

.ef-reorder-detail-value{
  font-size:.98rem;
  color:rgba(243,239,231,.92);
}

.ef-reorder-detail-value .amount{
  color:#f6e4b2;
  font-weight:700;
}

/* =========================================================
   Actions
========================================================= */

.ef-reorder-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.ef-fast-reorder{
  min-width:126px;
}

.efm-btn.button,
.woocommerce .efm-btn.button,
.woocommerce-page .efm-btn.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 16px;
  border-radius:12px;
  text-decoration:none;
  font-weight:700;
  font-size:.92rem;
  line-height:1;
  transition:all .18s ease;
  box-shadow:none;
}

.efm-btn.efm-btn-secondary.button,
.woocommerce .efm-btn.efm-btn-secondary.button,
.woocommerce-page .efm-btn.efm-btn-secondary.button{
  background:linear-gradient(180deg, rgba(26,30,40,.96) 0%, rgba(12,15,22,.96) 100%);
  border:1px solid rgba(255,255,255,.10);
  color:#f3efe7;
}

.efm-btn.efm-btn-secondary.button:hover,
.woocommerce .efm-btn.efm-btn-secondary.button:hover,
.woocommerce-page .efm-btn.efm-btn-secondary.button:hover{
  border-color:rgba(212,177,93,.28);
  color:#fff;
}

.efm-btn.efm-btn-primary.button,
.woocommerce .efm-btn.efm-btn-primary.button,
.woocommerce-page .efm-btn.efm-btn-primary.button{
  background:
    linear-gradient(180deg, rgba(70,64,50,.96) 0%, rgba(46,41,31,.96) 100%),
    linear-gradient(180deg, #d8bd77 0%, #a9873f 100%);
  border:1px solid rgba(214,177,93,.40);
  color:#fff8e8;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 6px 18px rgba(0,0,0,.22);
}

.efm-btn.efm-btn-primary.button:hover,
.woocommerce .efm-btn.efm-btn-primary.button:hover,
.woocommerce-page .efm-btn.efm-btn-primary.button:hover{
  border-color:rgba(214,177,93,.56);
  color:#fffdf8;
  transform:translateY(-1px);
}

/* =========================================================
   Empty States
========================================================= */

.efm-reorders-empty-card,
.ef-reorders-empty{
  padding:28px 24px;
  border:1px solid rgba(212,177,93,.16);
  border-radius:18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(255,255,255,.01) 100%),
    rgba(10,10,12,.86);
  box-shadow:0 10px 30px rgba(0,0,0,.24);
}

.efm-reorders-empty-card h3,
.ef-reorders-empty h3{
  margin:0 0 8px;
  color:#f8f4ec;
}

.efm-reorders-empty-card p,
.ef-reorders-empty p{
  margin:0 0 16px;
  color:rgba(243,239,231,.72);
}

/* =========================================================
   Responsive
========================================================= */

@media (max-width: 980px){
  .ef-reorders-header{
    align-items:flex-start;
    flex-direction:column;
  }

  .ef-reorder-card{
    grid-template-columns:96px minmax(0,1fr);
    align-items:start;
  }

  .ef-reorder-preview{
    width:96px;
  }

  .ef-reorder-thumb,
  .ef-reorder-thumb-placeholder{
    width:96px;
    height:124px;
  }

  .ef-reorder-actions{
    grid-column:1 / -1;
    justify-content:flex-start;
    margin-top:2px;
  }

  .ef-reorder-meta-row{
    grid-template-columns:54px minmax(0,1fr);
  }
}

@media (max-width: 640px){
  .ef-reorder-card{
    grid-template-columns:1fr;
    gap:16px;
    padding:16px;
  }

  .ef-reorder-preview{
    width:100%;
  }

  .ef-reorder-thumb,
  .ef-reorder-thumb-placeholder{
    width:100%;
    max-width:160px;
    height:206px;
  }

  .ef-reorder-topline{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }

  .ef-reorder-meta-row{
    grid-template-columns:1fr;
    gap:4px;
  }

  .ef-reorder-meta-label{
    padding-top:0;
  }

  .ef-reorder-actions{
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
  }

  .efm-btn.button,
  .woocommerce .efm-btn.button,
  .woocommerce-page .efm-btn.button{
    width:100%;
  }
}

.efm-option-intro--resend .efm-option-intro__promo{
  margin-top:14px;
  padding:14px 16px;
  border-radius:12px;

  background:
    linear-gradient(180deg, rgba(214,177,93,.18), rgba(214,177,93,.05));
  
  border:1px solid rgba(214,177,93,.35);

  box-shadow:
    0 0 0 1px rgba(214,177,93,.08) inset,
    0 10px 30px rgba(0,0,0,.35);

  position:relative;
}

/* =========================================================
   19) OPTIONS TAB — THE "ULTRA-LUXE" CANONICAL SYSTEM
   Neutral Defaults + High-Impact Accents
========================================================= */

/* THE MAIN CONTAINER */
.ef-form-shell #frm_form_9_container {
    max-width: 780px !important;
    margin: 0 auto !important;
    padding: 40px 0 80px !important;
}

/* ---------------------------------
   TOPLINE ALIGNMENT (Large Chevrons)
--------------------------------- */

.ef-form-shell #frm_form_9_container .efm-option-intro__topline {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important; /* Tighter gap to titles */
    margin-bottom: 12px !important;
}

.efm-option-intro__chevron {
    font-size: 18px !important; /* Significantly larger */
    font-weight: 900 !important;
    color: #d6b15d !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    transform: translateY(-1px); /* Optical alignment adjustment */
}

.efm-option-intro__eyebrow {
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.25em !important;
    color: #d6b15d !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    margin: 0 !important;
}

/* ---------------------------------
   GHOST TILES (Neutral Selection Logic)
--------------------------------- */

.ef-form-shell #frm_form_9_container .frm_radio label {
    display: flex !important;
    align-items: center !important;
    padding: 12px 18px !important;
    width: 100% !important;
    max-width: 380px;
    background: transparent !important;
    /* Neutral Border: Very faint, no gold yet */
    border: 1px solid rgba(255, 255, 255, 0.05) !important; 
    border-radius: 6px !important;
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.35) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* REMEDY: Only show the "Gold Luxe" state if the user has ACTIVELY selected it.
   We achieve this by targeting the .efm-choice-selected class ONLY. 
   If your system auto-applies this to the default, we ensure 'No' is styled 
   less aggressively than 'Yes' to reduce rejection bias. */

.ef-form-shell #frm_form_9_container .frm_radio.efm-choice-selected label {
    background: rgba(255, 255, 255, 0.03) !important;
    border-color: rgba(255, 255, 255, 0.15) !important; /* Neutral active state */
    color: #ffffff !important;
}

/* PREMIUM UPSELL: Make the 'Yes' option glow Gold only when selected */
/* Assuming 'Yes' is the first child or has a specific identifier */
.ef-form-shell #frm_form_9_container .frm_radio.efm-choice-selected:first-child label {
    background: rgba(214, 177, 93, 0.06) !important;
    border-color: rgba(214, 177, 93, 0.5) !important; /* Gold wireframe */
    color: #ffffff !important;
    box-shadow: 0 0 15px rgba(214, 177, 93, 0.1);
}

/* HOVER: Soft feedback */
.ef-form-shell #frm_form_9_container .frm_radio label:hover {
    border-color: rgba(255, 255, 255, 0.2) !important;
    color: rgba(255, 255, 255, 0.8) !important;
}

/* ---------------------------------
   TYPOGRAPHY & STRUCTURE
--------------------------------- */

.efm-option-intro__headline {
    font-size: 21px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin-bottom: 12px !important;
}

.efm-option-intro__details {
    font-size: 13px !important;
    line-height: 1.6 !important;
    color: rgba(255, 255, 255, 0.45) !important;
}

.option-choice-block-launch,
.option-choice-block-resend,
.option-choice-block-commission {
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
    padding-bottom: 50px !important;
    margin-bottom: 20px !important;
}

#ef-county-list .ef-cse-discount-note{
  margin: 0 12px 10px;
  padding: 10px 12px;
  border: 1px solid rgba(212,184,108,.28);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(212,184,108,.10), rgba(212,184,108,.05));
  color: #e7d6a0;
  font-size: 12px;
  line-height: 1.4;
}

#ef-county-list .ef-cse-price.is-discounted{
  color: #f0d48a;
  text-shadow: 0 0 10px rgba(212,184,108,.18);
}

/* Denver Metro special note */
#ef-county-list .ef-cse-denver-note{
  margin: 0 0 14px;
  padding: 12px 14px;
  border: 1px solid rgba(212,184,108,.42);
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(212,184,108,.16), rgba(212,184,108,.08));
  color: #f1df9f;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 600;
  box-shadow: 0 0 0 1px rgba(212,184,108,.08) inset;
}

/* Denver Metro child rows tighter */
#ef-county-list .ef-cse-kid.ef-cse-kid-denver{
  padding-top: 10px;
  padding-bottom: 10px;
  min-height: 0;
}

/* Slightly tighten the inner typography spacing too */
#ef-county-list .ef-cse-kid.ef-cse-kid-denver .ef-cse-kid-title{
  line-height: 1.2;
}

#ef-county-list .ef-cse-kid.ef-cse-kid-denver .ef-cse-kid-right{
  gap: 10px;
}

/* Make Denver child rows feel a little denser overall */
#ef-county-list .ef-cse-kids .ef-cse-kid.ef-cse-kid-denver + .ef-cse-kid.ef-cse-kid-denver{
  margin-top: 6px;
}

/* =========================
   GLOBAL CSE COMPACT MODE
========================= */

/* tighten overall card spacing */
#ef-county-list .ef-cse-card{
  padding-top: 14px;
  padding-bottom: 14px;
  margin-bottom: 14px;
}

/* tighten header spacing */
#ef-county-list .ef-cse-header{
  margin-bottom: 10px;
}

/* tighten controls block */
#ef-county-list .ef-cse-controls{
  padding-top: 8px;
  padding-bottom: 8px;
}

/* tighten row (button + pill row) */
#ef-county-list .ef-cse-row{
  margin-bottom: 10px;
}

/* shrink OR divider spacing */
#ef-county-list .ef-cse-or{
  margin: 10px 0;
}

/* tighten entire selection card */
#ef-county-list .ef-cse-entire{
  padding: 12px 14px;
  min-height: 0;
}

/* tighten text stack inside entire row */
#ef-county-list .ef-cse-entire-left{
  gap: 2px;
}

#ef-county-list .ef-cse-entire-title{
  line-height: 1.2;
}

#ef-county-list .ef-cse-entire-sub{
  margin-top: 2px;
}

/* tighten price + button cluster */
#ef-county-list .ef-cse-entire-right{
  gap: 10px;
}

/* tighten buttons slightly */
#ef-county-list .ef-cse-btn{
  padding-top: 8px;
  padding-bottom: 8px;
}

/* reduce vertical whitespace between stacked cards */
#ef-county-list .ef-cse-card + .ef-cse-card{
  margin-top: 10px;
}

/* slightly reduce recipient text footprint */
#ef-county-list .ef-cse-sub{
  font-size: 12px;
  opacity: 0.75;
}

/* =========================================
   CSE COMPACT OVERRIDE - ACTUAL TIGHTENING
========================================= */

/* tighten space between cards */
#ef-county-list{
  gap: 10px !important;
}

/* reduce visual bulk of each card */
#ef-county-list .ef-cse-card{
  border-radius: 16px;
}

/* tighten header block */
#ef-county-list .ef-cse-header{
  padding-bottom: 6px !important;
  margin-bottom: 6px !important;
}

#ef-county-list .ef-cse-title{
  line-height: 1.15 !important;
  margin-bottom: 2px !important;
}

#ef-county-list .ef-cse-sub{
  font-size: 12px !important;
  line-height: 1.15 !important;
  margin: 0 !important;
  opacity: .74;
}

/* tighten controls wrapper */
#ef-county-list .ef-cse-controls{
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

/* tighten the top row with button + pill */
#ef-county-list .ef-cse-row{
  margin-bottom: 6px !important;
  min-height: 0 !important;
  align-items: center !important;
}

/* tighter OR area */
#ef-county-list .ef-cse-or{
  margin: 6px 0 !important;
  min-height: 0 !important;
}

#ef-county-list .ef-cse-or-text{
  padding: 2px 7px !important;
  font-size: 10px !important;
}

/* this is the big one: shrink the "Entire County" button row */
#ef-county-list .ef-cse-entire{
  min-height: 64px !important;
  padding: 10px 12px !important;
  border-radius: 14px !important;
}

/* tighten the text stack inside the entire row */
#ef-county-list .ef-cse-entire-left{
  gap: 1px !important;
}

#ef-county-list .ef-cse-entire-title{
  line-height: 1.15 !important;
  margin: 0 !important;
}

#ef-county-list .ef-cse-entire-sub{
  line-height: 1.1 !important;
  margin: 0 !important;
  font-size: 12px !important;
}

/* tighten the price/button cluster */
#ef-county-list .ef-cse-entire-right{
  gap: 8px !important;
}

#ef-county-list .ef-cse-entire-price{
  line-height: 1 !important;
}

#ef-county-list .ef-cse-entire-badge{
  min-height: 32px !important;
  padding: 0 10px !important;
}

/* tighten the top action buttons too */
#ef-county-list .ef-cse-btn{
  min-height: 32px !important;
  padding: 7px 10px !important;
  line-height: 1 !important;
}

/* if subareas are open, tighten those too */
#ef-county-list .ef-cse-kids{
  gap: 6px !important;
}

#ef-county-list .ef-cse-kid{
  min-height: 42px !important;
  padding: 8px 10px !important;
}

/* =========================================
   CSE MICRO-COMPACT (TARGETED RED ZONES)
========================================= */

/* 1) HEADER → CONTROLS gap (big offender) */
#ef-county-list .ef-cse-header{
  margin-bottom: 4px !important;
  padding-bottom: 2px !important;
}

/* tighten title + recipient line */
#ef-county-list .ef-cse-title{
  margin-bottom: 2px !important;
}

#ef-county-list .ef-cse-sub{
  margin: 0 !important;
  line-height: 1.05 !important;
  font-size: 11.5px !important;
}

/* 2) CONTROLS ROW (buttons floating vertically) */
#ef-county-list .ef-cse-controls{
  padding-top: 2px !important;
  padding-bottom: 2px !important;
}

#ef-county-list .ef-cse-row{
  margin-bottom: 4px !important;
  min-height: 0 !important;
  align-items: center !important;
}

/* shrink button vertical footprint */
#ef-county-list .ef-cse-btn{
  min-height: 28px !important;
  padding: 5px 10px !important;
  font-size: 11px !important;
}

/* shrink the "Sub-areas Mode" pill */
#ef-county-list .ef-cse-pill{
  min-height: 28px !important;
  padding: 4px 10px !important;
  font-size: 11px !important;
}

/* OR divider tighter */
#ef-county-list .ef-cse-or{
  margin: 4px 0 !important;
}

/* 3) ENTIRE ROW (this is the chunky one) */
#ef-county-list .ef-cse-entire{
  padding: 8px 12px !important;
  min-height: 56px !important;
}

/* tighten text stack inside */
#ef-county-list .ef-cse-entire-left{
  gap: 0px !important;
}

#ef-county-list .ef-cse-entire-title{
  margin: 0 !important;
  line-height: 1.1 !important;
}

#ef-county-list .ef-cse-entire-sub{
  margin: 0 !important;
  font-size: 11.5px !important;
  line-height: 1.05 !important;
}

/* tighten price + button cluster */
#ef-county-list .ef-cse-entire-right{
  gap: 6px !important;
}

#ef-county-list .ef-cse-entire-badge{
  min-height: 28px !important;
  padding: 0 10px !important;
  font-size: 11px !important;
}


/* Hide resend block when not logged in */
body.logged-out .efm-resend-orders-block{
  display:none !important;
}

/* Hide legacy resend HTML block by default to prevent flash */
#frm_field_413_container{
  display:none;
}

/* Reveal only when JS explicitly allows it */
#frm_field_413_container.efm-show-resend-legacy{
  display:block !important;
}

/* =========================================================
   EflyerMarketing My Account: Properties Compact Cards
   Complete replacement
========================================================= */

.efm-properties-page .ef-properties-view {
	margin-top: 12px;
}

/* Kill common Formidable spacing/wrappers inside this view */
.efm-properties-page .ef-properties-view p,
.efm-properties-page .ef-properties-view .frm_form_field,
.efm-properties-page .ef-properties-view .frm_section_heading {
	margin: 0 !important;
	padding: 0 !important;
}

/* Compact directory card */
.efm-properties-page .ef-property-card-compact {
	position: relative !important;
	display: grid !important;
	/* FIX: Changed minmax/1fr to auto. 
	   This removes the "stretching" behavior that caused the gap.
	*/
	grid-template-columns: 86px auto auto auto !important;
	gap: 24px !important; /* Increased gap to maintain clean separation */
	align-items: center !important;

	width: 100% !important;
	min-height: 0 !important;

	margin: 0 0 10px !important;
	padding: 11px 16px !important;

	background:
		linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.015)),
		linear-gradient(180deg, rgba(24,24,27,.98), rgba(10,10,12,.98)) !important;

	border: 1px solid rgba(214,184,110,.28) !important;
	border-radius: 14px !important;

	box-shadow:
		0 12px 28px rgba(0,0,0,.38),
		inset 0 1px 0 rgba(255,255,255,.08) !important;

	overflow: hidden !important;
}

/* Subtle sheen */
.efm-properties-page .ef-property-card-compact::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	pointer-events: none !important;
	background:
		radial-gradient(circle at 10% 0%, rgba(214,184,110,.13), transparent 32%),
		linear-gradient(90deg, rgba(255,255,255,.04), transparent 36%) !important;
	opacity: .9 !important;
}

.efm-properties-page .ef-property-card-compact > * {
	position: relative !important;
	z-index: 1 !important;
}

/* PROPERTY badge */
.efm-properties-page .ef-property-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 76px !important;
	height: 34px !important;

	border-radius: 999px !important;
	background: rgba(214,184,110,.10) !important;
	border: 1px solid rgba(214,184,110,.38) !important;

	color: rgba(234,210,148,.95) !important;
	font-size: 9px !important;
	font-weight: 950 !important;
	line-height: 1 !important;
	letter-spacing: .11em !important;
	text-transform: uppercase !important;
	text-align: center !important;

	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.08),
		0 8px 18px rgba(0,0,0,.24) !important;
}

/* Main property text */
.efm-properties-page .ef-property-info {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	min-width: 0 !important;
	/* Removed width: 100% to prevent it from pushing buttons away */
	min-height: 42px !important;
}

/* Top line: address + city/state */
.efm-properties-page .ef-property-topline {
	display: flex !important;
	align-items: baseline !important;
	gap: 10px !important;
	min-width: 0 !important;
	margin: 0 0 4px !important;
}

.efm-properties-page .ef-property-title {
	color: #fff !important;
	font-size: 15px !important;
	font-weight: 950 !important;
	line-height: 1.15 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	max-width: 360px !important;
}

.efm-properties-page .ef-property-location {
	color: rgba(255,255,255,.68) !important;
	font-size: 12px !important;
	font-weight: 750 !important;
	line-height: 1.15 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

/* Subject + entry row */
.efm-properties-page .ef-property-details {
	display: flex !important;
	align-items: center !important;
	gap: 18px !important;
	flex-wrap: wrap !important;
	min-width: 0 !important;
	margin: 0 !important;
}

.efm-properties-page .ef-property-detail {
	color: rgba(255,255,255,.76) !important;
	font-size: 12px !important;
	font-weight: 750 !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
}

.efm-properties-page .ef-property-detail strong {
	color: rgba(255,255,255,.48) !important;
	font-size: 10px !important;
	font-weight: 950 !important;
	letter-spacing: .06em !important;
	text-transform: uppercase !important;
	margin-right: 5px !important;
}

/* Tour / website links */
.efm-properties-page .ef-property-links {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	align-self: center !important;
	gap: 8px !important;
	white-space: nowrap !important;
}

.efm-properties-page .ef-property-links a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	min-width: 58px !important;
	height: 30px !important;
	padding: 0 10px !important;

	border-radius: 999px !important;
	background: rgba(88,166,255,.08) !important;
	border: 1px solid rgba(88,166,255,.22) !important;

	color: #58a6ff !important;
	font-size: 11px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	text-decoration: none !important;
}

/* Right action */
.efm-properties-page .ef-property-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	align-self: center !important;
	white-space: nowrap !important;
}

.efm-properties-page .ef-property-btn {
	box-sizing: border-box !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	height: 34px !important;
	min-height: 34px !important;
	min-width: 128px !important;
	padding: 0 14px !important;

	border-radius: 10px !important;
	background:
		linear-gradient(180deg, rgba(119,96,47,.98), rgba(72,57,29,.98)) !important;
	border: 1px solid rgba(239,211,137,.54) !important;

	color: #fff4d0 !important;
	font-size: 12px !important;
	font-weight: 950 !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap !important;

	vertical-align: middle !important;
	transform: none !important;

	box-shadow:
		0 8px 20px rgba(0,0,0,.30),
		inset 0 1px 0 rgba(255,255,255,.18) !important;
}

/* =========================================================
   EflyerMarketing My Account: Agents Compact Cards
========================================================= */

.efm-agents-page .ef-agents-view {
	margin-top: 12px;
}

.efm-agents-page .ef-agents-view p,
.efm-agents-page .ef-agents-view .frm_form_field,
.efm-agents-page .ef-agents-view .frm_section_heading {
	margin: 0 !important;
	padding: 0 !important;
}

.efm-agents-page .ef-agent-card-compact {
	position: relative !important;
	display: grid !important;
	grid-template-columns: 86px minmax(0, 1fr) auto auto !important;
	gap: 12px !important;
	align-items: center !important;

	width: 100% !important;
	min-height: 0 !important;

	margin: 0 0 10px !important;
	padding: 11px 16px !important;

	background:
		linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.015)),
		linear-gradient(180deg, rgba(24,24,27,.98), rgba(10,10,12,.98)) !important;

	border: 1px solid rgba(214,184,110,.28) !important;
	border-radius: 14px !important;

	box-shadow:
		0 12px 28px rgba(0,0,0,.38),
		inset 0 1px 0 rgba(255,255,255,.08) !important;

	overflow: hidden !important;
}

.efm-agents-page .ef-agent-card-compact::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	pointer-events: none !important;
	background:
		radial-gradient(circle at 10% 0%, rgba(214,184,110,.13), transparent 32%),
		linear-gradient(90deg, rgba(255,255,255,.04), transparent 36%) !important;
	opacity: .9 !important;
}

.efm-agents-page .ef-agent-card-compact > * {
	position: relative !important;
	z-index: 1 !important;
}

.efm-agents-page .ef-agent-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 76px !important;
	height: 34px !important;

	border-radius: 999px !important;
	background: rgba(214,184,110,.10) !important;
	border: 1px solid rgba(214,184,110,.38) !important;

	color: rgba(234,210,148,.95) !important;
	font-size: 9px !important;
	font-weight: 950 !important;
	line-height: 1 !important;
	letter-spacing: .11em !important;
	text-transform: uppercase !important;
	text-align: center !important;

	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.08),
		0 8px 18px rgba(0,0,0,.24) !important;
}

.efm-agents-page .ef-agent-info {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	min-width: 0 !important;
	width: 100% !important;
	min-height: 42px !important;
}

.efm-agents-page .ef-agent-topline {
	display: flex !important;
	align-items: baseline !important;
	gap: 10px !important;
	min-width: 0 !important;
	margin: 0 0 4px !important;
}

.efm-agents-page .ef-agent-title {
	color: #fff !important;
	font-size: 15px !important;
	font-weight: 950 !important;
	line-height: 1.15 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	max-width: 360px !important;
}

.efm-agents-page .ef-agent-location {
	color: rgba(255,255,255,.68) !important;
	font-size: 12px !important;
	font-weight: 750 !important;
	line-height: 1.15 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

.efm-agents-page .ef-agent-details {
	display: flex !important;
	align-items: center !important;
	gap: 18px !important;
	flex-wrap: wrap !important;
	min-width: 0 !important;
	margin: 0 !important;
}

.efm-agents-page .ef-agent-detail {
	color: rgba(255,255,255,.76) !important;
	font-size: 12px !important;
	font-weight: 750 !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
}

.efm-agents-page .ef-agent-detail strong {
	color: rgba(255,255,255,.48) !important;
	font-size: 10px !important;
	font-weight: 950 !important;
	letter-spacing: .06em !important;
	text-transform: uppercase !important;
	margin-right: 5px !important;
}

.efm-agents-page .ef-agent-links {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	align-self: center !important;
	gap: 8px !important;
	white-space: nowrap !important;
}

.efm-agents-page .ef-agent-links a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	min-width: 58px !important;
	height: 30px !important;
	padding: 0 10px !important;

	border-radius: 999px !important;
	background: rgba(88,166,255,.08) !important;
	border: 1px solid rgba(88,166,255,.22) !important;

	color: #58a6ff !important;
	font-size: 11px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	text-decoration: none !important;
}

.efm-agents-page .ef-agent-links a:hover {
	background: rgba(88,166,255,.14) !important;
	border-color: rgba(88,166,255,.36) !important;
	color: #8cc4ff !important;
}

.efm-agents-page .ef-agent-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	align-self: center !important;
	white-space: nowrap !important;
}

.efm-agents-page .ef-agent-btn {
	box-sizing: border-box !important;

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	height: 34px !important;
	min-height: 34px !important;
	min-width: 238px !important;
	padding: 0 14px !important;

	border-radius: 10px !important;
	background:
		linear-gradient(180deg, rgba(119,96,47,.98), rgba(72,57,29,.98)) !important;
	border: 1px solid rgba(239,211,137,.54) !important;

	color: #fff4d0 !important;
	font-size: 12px !important;
	font-weight: 950 !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap !important;

	box-shadow:
		0 8px 20px rgba(0,0,0,.30),
		inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.efm-agents-page .ef-agent-btn span {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;

	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: 1 !important;
	color: inherit !important;
	text-align: center !important;
	white-space: nowrap !important;

	position: relative !important;
	top: -1px !important;
}

.efm-agents-page .ef-agent-btn:hover,
.efm-agents-page .ef-agent-btn:focus,
.efm-agents-page .ef-agent-btn:active {
	color: #fff4d0 !important;
	text-decoration: none !important;
	transform: none !important;
}

.efm-agents-page .frm_no_entries,
.efm-agents-page .frm_message,
.efm-agents-page .frm_error_style {
	background: rgba(18,18,20,.92) !important;
	border: 1px solid rgba(214,184,110,.35) !important;
	border-radius: 16px !important;
	color: rgba(255,255,255,.82) !important;
	padding: 20px !important;
}

/* Medium screens */
@media (max-width: 980px) {
	.efm-agents-page .ef-agent-card-compact {
		grid-template-columns: 82px minmax(260px, 1fr) auto !important;
		width: 100% !important;
		min-width: 0 !important;
	}

	.efm-agents-page .ef-agent-links {
		grid-column: 2 !important;
		justify-content: flex-start !important;
		margin-top: 8px !important;
	}

	.efm-agents-page .ef-agent-actions {
		grid-column: 3 !important;
		grid-row: 1 / span 2 !important;
	}
}

/* Mobile */
@media (max-width: 680px) {
	.efm-agents-page .ef-agent-card-compact {
		grid-template-columns: 1fr !important;
		width: 100% !important;
		min-width: 0 !important;
		gap: 10px !important;
		padding: 14px !important;
	}

	.efm-agents-page .ef-agent-badge {
		width: fit-content !important;
		min-width: 76px !important;
	}

	.efm-agents-page .ef-agent-topline {
		display: block !important;
	}

	.efm-agents-page .ef-agent-title,
	.efm-agents-page .ef-agent-location {
		max-width: none !important;
		white-space: normal !important;
		overflow: visible !important;
		text-overflow: unset !important;
	}

	.efm-agents-page .ef-agent-location {
		margin-top: 3px !important;
	}

	.efm-agents-page .ef-agent-details {
		flex-wrap: wrap !important;
	}

	.efm-agents-page .ef-agent-links,
	.efm-agents-page .ef-agent-actions {
		justify-content: flex-start !important;
	}

	.efm-agents-page .ef-agent-btn {
		width: 100% !important;
		min-width: 0 !important;
	}
}


/* =========================================================
   FF9 CSE MAP BUTTON + MODAL
========================================================= */

#ef-county-list .ef-cse-map-row {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin: 14px 0 14px;
  padding-top: 10px;
  border-top: 1px solid rgba(229, 199, 122, 0.18);
}

#ef-county-list .ef-cse-map-btn {
  appearance: none;
  border: 1px solid rgba(229, 199, 122, 0.58);
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(48, 44, 32, 0.92), rgba(16, 15, 12, 0.96));
  color: #ffe99a;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 8px 14px;
  cursor: pointer;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 10px 22px rgba(0, 0, 0, 0.28);
}

#ef-county-list .ef-cse-map-btn:hover {
  border-color: rgba(255, 228, 139, 0.9);
  color: #fff3b8;
  transform: translateY(-1px);
}

.ef-cse-map-modal[hidden] {
  display: none !important;
}

.ef-cse-map-modal {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: grid;
  place-items: center;
  padding: 28px;
}

.ef-cse-map-modal-backdrop {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 30% 15%, rgba(229, 199, 122, 0.16), transparent 34%),
    rgba(0, 0, 0, 0.78);
  backdrop-filter: blur(10px);
}

.ef-cse-map-modal-shell {
  position: relative;
  width: min(1040px, 94vw);
  max-height: 88vh;
  border: 1px solid rgba(229, 199, 122, 0.42);
  border-radius: 22px;
  background:
    linear-gradient(145deg, rgba(35, 34, 30, 0.98), rgba(8, 8, 7, 0.98));
  box-shadow:
    0 34px 90px rgba(0, 0, 0, 0.62),
    inset 0 1px 0 rgba(255, 255, 255, 0.07);
  overflow: hidden;
}

.ef-cse-map-modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border-bottom: 1px solid rgba(229, 199, 122, 0.22);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.015));
}

.ef-cse-map-modal-title {
  color: #f7efd9;
  font-size: 17px;
  font-weight: 900;
  letter-spacing: 0.02em;
}

.ef-cse-map-modal-close {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  border: 1px solid rgba(229, 199, 122, 0.46);
  background: rgba(0, 0, 0, 0.35);
  color: #ffe99a;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

.ef-cse-map-modal-close:hover {
  border-color: rgba(255, 232, 157, 0.88);
  color: #fff6cf;
}

.ef-cse-map-modal-body {
  padding: 18px;
  max-height: calc(88vh - 72px);
  overflow: auto;
}

.ef-cse-map-modal-img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 16px;
  border: 1px solid rgba(229, 199, 122, 0.22);
  background: rgba(0, 0, 0, 0.4);
}

body.ef-cse-map-modal-open {
  overflow: hidden;
}
/* =========================================================
   CSE MAP BUTTON, RECTANGULAR STYLE
   Makes "View Map" match the Form 9 control buttons
========================================================= */

#frm_form_9_container .ef-cse-map-btn,
#frm_form_9_container .ef-cse-view-map-btn,
#frm_form_9_container .ef-cse-card button[data-action="view-map"],
#frm_form_9_container .ef-cse-card button[data-action="open-map"],
#frm_form_9_container .ef-cse-card button[data-map-url] {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: auto;
  min-width: 92px;
  height: 28px;
  padding: 0 14px;

  border-radius: 8px;
  border: 1px solid rgba(234, 205, 131, 0.55);

  background:
    linear-gradient(180deg, rgba(255, 238, 174, 0.18), rgba(174, 126, 36, 0.12)),
    rgba(16, 16, 14, 0.84);

  color: #f7e4a6;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.035em;
  text-transform: uppercase;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 8px 18px rgba(0, 0, 0, 0.22);

  cursor: pointer;
}

#frm_form_9_container .ef-cse-map-btn:hover,
#frm_form_9_container .ef-cse-view-map-btn:hover,
#frm_form_9_container .ef-cse-card button[data-action="view-map"]:hover,
#frm_form_9_container .ef-cse-card button[data-action="open-map"]:hover,
#frm_form_9_container .ef-cse-card button[data-map-url]:hover {
  background:
    linear-gradient(180deg, rgba(255, 238, 174, 0.26), rgba(174, 126, 36, 0.18)),
    rgba(20, 20, 18, 0.92);

  border-color: rgba(255, 226, 145, 0.8);
  color: #fff1bc;
}

/* =========================================================
   FORM 9 WIDTH + TOP OFFSET CONTROL PATCH
   Restores central control after Section 15 max-width override
========================================================= */

.ef-form-shell{
  --efm-form-width: 1000px;
  --efm-form-side-gutter: 32px;
  --efm-tabs-content-top-offset: 0px;
}

/* Restore controlled form width */
.ef-form-shell #frm_form_9_container{
  width:min(var(--efm-form-width), calc(100vw - var(--efm-form-side-gutter))) !important;
  max-width:min(var(--efm-form-width), calc(100vw - var(--efm-form-side-gutter))) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Let the form fill its controlled wrapper, not the viewport */
.ef-form-shell #frm_form_9_container form{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* Reduce the large gap below the fixed tab bar */
.ef-form-shell .order-form-tabs .e-n-tabs-content{
  margin-top:var(--efm-tabs-content-top-offset) !important;
  padding-top:0 !important;
}

/* Optional: keep the progress bar aligned with the form */
.ef-form-shell #frm_form_9_container .ff-progress-wrapper{
  width:100% !important;
  max-width:100% !important;
}

/* Mobile safety */
@media (max-width:768px){
  .ef-form-shell{
    --efm-form-width: 100%;
    --efm-form-side-gutter: 20px;
    --efm-tabs-content-top-offset: 54px;
  }
}
/* =========================================================
   EFM PAYMENT BUTTON COMPACT OVERRIDE
   Beats older Woo payment button lock using #payment scope
========================================================= */

.woocommerce #payment.efm-payment-active #place_order,
.woocommerce-checkout #payment.efm-payment-active #place_order,
#payment.efm-payment-active #place_order,
#payment.efm-payment-active button#place_order,
#payment.efm-payment-active button[name="woocommerce_checkout_place_order"],
#payment.efm-payment-active .form-row.place-order #place_order,
#payment.efm-payment-active .ef-woo-place-order {
  width: 100% !important;

  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;

  padding: 0 20px !important;
  margin: 0 !important;

  border-radius: 10px !important;
  line-height: 42px !important;
  font-size: 12px !important;
  letter-spacing: 0.14em !important;
  text-align: left !important;
}

/* Coupon button compact override */
#payment.efm-payment-active #efm-apply-coupon,
#payment.efm-payment-active button[name="apply_coupon"],
#payment.efm-payment-active .efm-checkout-coupon__row button,
.woocommerce #payment.efm-payment-active button[name="apply_coupon"],
.woocommerce-checkout #payment.efm-payment-active button[name="apply_coupon"] {
  width: auto !important;
  min-width: 118px !important;
  max-width: 140px !important;

  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;

  padding: 0 14px !important;
  margin: 0 !important;

  border-radius: 9px !important;
  line-height: 34px !important;
  font-size: 11px !important;
  letter-spacing: 0.11em !important;
  white-space: nowrap !important;
}

/* Coupon input compact override */
#payment.efm-payment-active input[name="coupon_code"],
#payment.efm-payment-active #efm-coupon-code,
#payment.efm-payment-active .efm-checkout-coupon__row input,
.woocommerce #payment.efm-payment-active input[name="coupon_code"] {
  width: 150px !important;
  max-width: 150px !important;

  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;

  padding: 0 12px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
  line-height: 34px !important;
}

/* Coupon row */
#payment.efm-payment-active .efm-checkout-coupon__row,
#payment.efm-payment-active form.checkout_coupon,
#payment.efm-payment-active .checkout_coupon {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 14px 0 12px !important;
}

/* Place order wrapper */
#payment.efm-payment-active .form-row.place-order,
#payment.efm-payment-active .place-order {
  padding-top: 12px !important;
  margin-top: 12px !important;
}

/* =========================================================
   EFM FORM 9 PREMIUM VISUAL SYSTEM
   Safe Consolidated Version
   Form card + nested tab cosmetics only
========================================================= */

#frm_form_9_container,
.ef-form-shell,
.efm-form-shell {
  --efm-gold: #d8bd72;
  --efm-gold-bright: #fff0b5;
  --efm-gold-soft: rgba(216, 189, 114, 0.28);
  --efm-gold-deep: #8b7138;
  --efm-bronze: #9d7e3c;
  --efm-graphite: #101113;
  --efm-graphite-2: #17181b;
  --efm-black: #050607;
  --efm-ink: #f6f0dc;
  --efm-muted: rgba(246, 240, 220, 0.68);
  --efm-line: rgba(216, 189, 114, 0.24);
  --efm-line-strong: rgba(255, 232, 165, 0.52);
  --efm-glow: rgba(216, 189, 114, 0.20);
}

/* =========================================================
   FORM STAGE ATMOSPHERE
========================================================= */

#frm_form_9_container {
  position: relative;
  isolation: isolate;
}

#frm_form_9_container::before {
  content: "";
  position: absolute;
  inset: -36px -28px auto -28px;
  height: 320px;
  pointer-events: none;
  z-index: -1;
  background:
    radial-gradient(circle at 50% 0%, rgba(216, 189, 114, 0.12), transparent 58%),
    radial-gradient(circle at 85% 18%, rgba(255, 240, 181, 0.05), transparent 42%),
    radial-gradient(circle at 15% 12%, rgba(216, 189, 114, 0.055), transparent 45%);
  filter: blur(2px);
}

/* Main form card */
#frm_form_9_container .frm_fields_container {
  position: relative;
  padding: 18px 18px 20px;
  overflow: hidden;

  background:
    radial-gradient(circle at 16% 0%, rgba(255, 232, 165, 0.10), transparent 34%),
    radial-gradient(circle at 84% 12%, rgba(216, 189, 114, 0.055), transparent 42%),
    linear-gradient(145deg, rgba(255,255,255,0.052), rgba(255,255,255,0.012)),
    linear-gradient(180deg, rgba(23,24,26,0.97), rgba(7,8,9,0.985));

  border: 1px solid rgba(216, 189, 114, 0.24);
  border-radius: 18px;

  box-shadow:
    0 24px 64px rgba(0,0,0,0.60),
    inset 0 1px 0 rgba(255,255,255,0.10),
    inset 0 -1px 0 rgba(216, 189, 114, 0.12),
    inset 0 0 0 1px rgba(255,255,255,0.025),
    0 0 34px rgba(216, 189, 114, 0.085);
}

#frm_form_9_container .frm_fields_container::before {
  content: "";
  position: absolute;
  inset: 0 18px auto 18px;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 240, 181, 0.58),
    rgba(216, 189, 114, 0.26),
    transparent
  );
  pointer-events: none;
}

#frm_form_9_container .frm_fields_container::after {
  content: "";
  position: absolute;
  top: -42%;
  right: -30%;
  width: 54%;
  height: 185%;
  transform: rotate(18deg);
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,0.026),
    transparent
  );
  pointer-events: none;
}

#frm_form_9_container .frm_form_field,
#frm_form_9_container .frm_section_heading,
#frm_form_9_container .frm_html_container {
  position: relative;
  z-index: 2;
}

/* =========================================================
   LABELS / SPACING
========================================================= */

#frm_form_9_container .frm_form_field {
  margin-bottom: 10px;
}

#frm_form_9_container .frm_primary_label,
#frm_form_9_container label {
  color: rgba(255, 246, 218, 0.92);
  font-weight: 750;
  letter-spacing: 0.012em;
  text-shadow: 0 1px 2px rgba(0,0,0,0.82);
}

#frm_form_9_container .frm_primary_label {
  margin-bottom: 5px;
  font-size: 0.78rem;
}

#frm_form_9_container .frm_description,
#frm_form_9_container .frm_help {
  color: rgba(255, 238, 189, 0.70);
  font-size: 0.78rem;
}

/* =========================================================
   INPUTS
========================================================= */

#frm_form_9_container input[type="text"],
#frm_form_9_container input[type="email"],
#frm_form_9_container input[type="tel"],
#frm_form_9_container input[type="url"],
#frm_form_9_container input[type="number"],
#frm_form_9_container textarea,
#frm_form_9_container select {
  min-height: 34px;
  padding-left: 12px;

  color: #fff8df;

  background:
    linear-gradient(90deg, rgba(216, 189, 114, 0.052), transparent 14%),
    linear-gradient(180deg, rgba(255,255,255,0.082), rgba(255,255,255,0.024)),
    rgba(12, 13, 14, 0.94);

  border: 1px solid rgba(255, 236, 176, 0.18);
  border-radius: 10px;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    inset 0 -12px 22px rgba(0,0,0,0.18),
    0 1px 0 rgba(255,255,255,0.035);

  transition:
    border-color 160ms ease,
    box-shadow 160ms ease,
    background 160ms ease;
}

#frm_form_9_container input[type="text"]:hover,
#frm_form_9_container input[type="email"]:hover,
#frm_form_9_container input[type="tel"]:hover,
#frm_form_9_container input[type="url"]:hover,
#frm_form_9_container input[type="number"]:hover,
#frm_form_9_container textarea:hover,
#frm_form_9_container select:hover {
  border-color: rgba(255, 236, 176, 0.34);

  background:
    linear-gradient(90deg, rgba(216, 189, 114, 0.078), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,0.095), rgba(255,255,255,0.028)),
    rgba(13, 14, 15, 0.96);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    0 0 0 1px rgba(216, 189, 114, 0.08),
    0 0 18px rgba(216, 189, 114, 0.075);
}

#frm_form_9_container input[type="text"]:focus,
#frm_form_9_container input[type="email"]:focus,
#frm_form_9_container input[type="tel"]:focus,
#frm_form_9_container input[type="url"]:focus,
#frm_form_9_container input[type="number"]:focus,
#frm_form_9_container textarea:focus,
#frm_form_9_container select:focus {
  outline: none;
  border-color: rgba(255, 235, 165, 0.62);

  background:
    linear-gradient(90deg, rgba(255, 232, 165, 0.12), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,0.105), rgba(255,255,255,0.035)),
    rgba(14, 15, 16, 0.98);

  box-shadow:
    0 0 0 1px rgba(216, 189, 114, 0.16),
    0 0 20px rgba(216, 189, 114, 0.12),
    inset 0 1px 0 rgba(255,255,255,0.12);
}

/* =========================================================
   RADIO / CHECKBOX ROWS
========================================================= */

#frm_form_9_container .frm_radio,
#frm_form_9_container .frm_checkbox {
  min-height: 34px;
  display: flex;
  align-items: center;
  padding: 9px 12px;

  background:
    linear-gradient(90deg, rgba(216, 189, 114, 0.035), transparent 18%),
    linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.012));

  border: 1px solid rgba(216, 189, 114, 0.12);
  border-radius: 9px;

  transition:
    border-color 160ms ease,
    box-shadow 160ms ease,
    background 160ms ease;
}

#frm_form_9_container .frm_radio:hover,
#frm_form_9_container .frm_checkbox:hover {
  border-color: rgba(255, 235, 165, 0.28);

  background:
    linear-gradient(90deg, rgba(216, 189, 114, 0.052), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,0.050), rgba(255,255,255,0.016));

  box-shadow: 0 0 14px rgba(216, 189, 114, 0.06);
}

#frm_form_9_container .frm_radio:has(input:checked),
#frm_form_9_container .frm_checkbox:has(input:checked) {
  border-color: rgba(216, 189, 114, 0.28);

  background:
    linear-gradient(90deg, rgba(216, 189, 114, 0.070), transparent 24%),
    radial-gradient(circle at 0% 50%, rgba(255, 240, 181, 0.050), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,0.042), rgba(255,255,255,0.014));

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.065),
    0 0 10px rgba(216, 189, 114, 0.050);
}

#frm_form_9_container input[type="radio"]:checked,
#frm_form_9_container input[type="checkbox"]:checked {
  accent-color: #b99a52;
}

/* =========================================================
   ELEMENTOR NESTED TABS
   Safe visual makeover only, does not control positioning
========================================================= */

/*
   Important:
   Do not set position, top, left, right, max-width, margin-left,
   margin-right, overflow, or flex-wrap here.
   The existing order form system controls the tab rail placement.
*/

.ef-form-shell .order-form-tabs .e-n-tabs-heading,
.ef-form-shell.order-form-tabs .e-n-tabs-heading,
.order-form-tabs .e-n-tabs-heading {
  gap: 8px !important;
  padding: 8px 10px 10px !important;

  background:
    radial-gradient(circle at 50% 100%, rgba(216, 189, 114, 0.13), transparent 60%),
    linear-gradient(180deg, rgba(35, 35, 32, 0.90), rgba(7, 8, 9, 0.98) 56%, rgba(0, 0, 0, 0.98)) !important;

  border-top: 1px solid rgba(255, 240, 181, 0.14) !important;
  border-bottom: 1px solid rgba(216, 189, 114, 0.34) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.055),
    inset 0 -1px 0 rgba(0,0,0,0.92),
    0 12px 28px rgba(0,0,0,0.42),
    0 0 20px rgba(216, 189, 114, 0.045) !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title,
.ef-form-shell.order-form-tabs .e-n-tab-title,
.order-form-tabs .e-n-tab-title {
  position: relative !important;

  min-height: 45px !important;
  padding: 8px 13px 9px !important;

  border-radius: 4px !important;
  border: 1px solid rgba(216, 189, 114, 0.25) !important;

  color: rgba(255, 246, 218, 0.78) !important;
  font-weight: 850 !important;
  line-height: 1.08 !important;
  letter-spacing: 0.012em !important;
  text-align: center !important;

  text-shadow:
    0 1px 2px rgba(0,0,0,0.95),
    0 0 10px rgba(216, 189, 114, 0.08) !important;

  background:
    linear-gradient(90deg, rgba(255,255,255,0.018), transparent 18%, transparent 82%, rgba(0,0,0,0.16)),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,0.075), transparent 42%),
    linear-gradient(180deg, rgba(39, 40, 41, 0.98), rgba(17, 18, 21, 0.99) 46%, rgba(5, 6, 8, 0.99)) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.10),
    inset 0 -1px 0 rgba(0,0,0,0.88),
    0 8px 16px rgba(0,0,0,0.36) !important;

  overflow: hidden !important;
  transform: translateY(0) !important;

  transition:
    transform 160ms ease,
    color 160ms ease,
    border-color 160ms ease,
    box-shadow 160ms ease,
    background 160ms ease,
    filter 160ms ease !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title .e-n-tab-title-text,
.ef-form-shell.order-form-tabs .e-n-tab-title .e-n-tab-title-text,
.order-form-tabs .e-n-tab-title .e-n-tab-title-text {
  position: relative !important;
  z-index: 3 !important;
  color: inherit !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title::before,
.ef-form-shell.order-form-tabs .e-n-tab-title::before,
.order-form-tabs .e-n-tab-title::before {
  content: "" !important;
  position: absolute !important;
  left: 8% !important;
  right: 8% !important;
  top: 1px !important;
  height: 1px !important;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 240, 181, 0.38),
    rgba(216, 189, 114, 0.22),
    transparent
  ) !important;

  opacity: 0.74 !important;
  pointer-events: none !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title::after,
.ef-form-shell.order-form-tabs .e-n-tab-title::after,
.order-form-tabs .e-n-tab-title::after {
  content: "" !important;
  position: absolute !important;
  left: 10% !important;
  right: 10% !important;
  bottom: 4px !important;
  height: 1px !important;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(0,0,0,0.62),
    rgba(255,255,255,0.075),
    rgba(0,0,0,0.50),
    transparent
  ) !important;

  pointer-events: none !important;
}

/* Inactive hover, bottom-button style */
.ef-form-shell .order-form-tabs .e-n-tab-title:not([aria-selected="true"]):hover,
.ef-form-shell.order-form-tabs .e-n-tab-title:not([aria-selected="true"]):hover,
.order-form-tabs .e-n-tab-title:not([aria-selected="true"]):hover {
  color: rgba(255, 241, 197, 0.98) !important;
  border-color: rgba(255, 232, 165, 0.45) !important;

  background:
    linear-gradient(90deg, rgba(216,189,114,0.075), transparent 20%, transparent 80%, rgba(216,189,114,0.05)),
    radial-gradient(circle at 50% 0%, rgba(255, 232, 165, 0.14), transparent 48%),
    linear-gradient(180deg, rgba(50, 50, 49, 0.99), rgba(20, 20, 21, 0.99) 48%, rgba(7, 8, 10, 0.99)) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.14),
    inset 0 -1px 0 rgba(0,0,0,0.86),
    0 10px 22px rgba(0,0,0,0.40),
    0 0 16px rgba(216, 189, 114, 0.10) !important;

  transform: translateY(-1px) !important;
}

/* Active tab, champagne campaign-control look */
.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"],
.ef-form-shell.order-form-tabs .e-n-tab-title[aria-selected="true"],
.order-form-tabs .e-n-tab-title[aria-selected="true"] {
  color: #080704 !important;
  border-color: rgba(255, 240, 181, 0.82) !important;

  background:
    linear-gradient(90deg, rgba(93, 68, 24, 0.42), rgba(255,255,255,0.10) 28%, rgba(255,255,255,0.02) 52%, rgba(93, 68, 24, 0.42)),
    radial-gradient(circle at 50% -12%, rgba(255,255,255,0.56), transparent 42%),
    linear-gradient(90deg, #a3833f 0%, #ecd791 34%, #fff0b5 52%, #c9ac61 76%, #8f7134 100%) !important;

  text-shadow:
    0 1px 0 rgba(255,255,255,0.38),
    0 -1px 0 rgba(96, 69, 25, 0.30) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.78),
    inset 0 -1px 0 rgba(72, 52, 20, 0.76),
    0 0 0 1px rgba(0,0,0,0.92),
    0 0 28px rgba(216, 189, 114, 0.28),
    0 14px 26px rgba(0,0,0,0.58) !important;

  transform: translateY(-2px) !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text,
.ef-form-shell.order-form-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text,
.order-form-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {
  color: #080704 !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"]::before,
.ef-form-shell.order-form-tabs .e-n-tab-title[aria-selected="true"]::before,
.order-form-tabs .e-n-tab-title[aria-selected="true"]::before {
  left: 7% !important;
  right: 7% !important;
  top: 2px !important;
  height: 1px !important;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,0.88),
    rgba(255,246,205,1),
    rgba(255,255,255,0.74),
    transparent
  ) !important;

  box-shadow: 0 0 9px rgba(255, 240, 181, 0.48) !important;
  opacity: 1 !important;
}

.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"]::after,
.ef-form-shell.order-form-tabs .e-n-tab-title[aria-selected="true"]::after,
.order-form-tabs .e-n-tab-title[aria-selected="true"]::after {
  left: 12% !important;
  right: 12% !important;
  bottom: 5px !important;
  height: 1px !important;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(74, 51, 17, 0.58),
    rgba(255,255,255,0.40),
    rgba(74, 51, 17, 0.50),
    transparent
  ) !important;

  box-shadow: none !important;
}

/* =========================================================
   CURRENT TOTAL PILL POLISH
========================================================= */

#ef-current-total,
.ef-current-total,
#ff-current-total,
.ff-current-total {
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 240, 181, 0.17), transparent 55%),
    linear-gradient(180deg, #111111, #050505);

  border: 1px solid rgba(255, 232, 165, 0.44);

  box-shadow:
    0 0 0 1px rgba(0,0,0,0.9),
    0 10px 26px rgba(0,0,0,0.56),
    0 0 24px rgba(216, 189, 114, 0.18),
    inset 0 1px 0 rgba(255,255,255,0.12);
}

/* =========================================================
   RESPONSIVE SAFETY
========================================================= */

@media (max-width: 860px) {
  .ef-form-shell .order-form-tabs .e-n-tabs-heading,
  .ef-form-shell.order-form-tabs .e-n-tabs-heading,
  .order-form-tabs .e-n-tabs-heading {
    gap: 4px !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }

  .ef-form-shell .order-form-tabs .e-n-tab-title,
  .ef-form-shell.order-form-tabs .e-n-tab-title,
  .order-form-tabs .e-n-tab-title {
    min-height: 42px !important;
    padding: 8px 8px !important;
    font-size: 0.8rem !important;
  }
}
/* =========================================================
   EFM FORM 9 TAB REFINEMENT PATCH
   Softer active gold + stronger metal plate depth
========================================================= */

/* Slightly deeper inactive tab metal */
.ef-form-shell .order-form-tabs .e-n-tab-title,
.ef-form-shell.order-form-tabs .e-n-tab-title,
.order-form-tabs .e-n-tab-title {
  background:
    linear-gradient(90deg, rgba(255,255,255,0.012), transparent 18%, transparent 82%, rgba(0,0,0,0.20)),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,0.065), transparent 42%),
    linear-gradient(180deg, rgba(35, 36, 38, 0.98), rgba(14, 15, 18, 0.99) 48%, rgba(3, 4, 6, 0.99)) !important;

  border-color: rgba(216, 189, 114, 0.22) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.085),
    inset 0 -1px 0 rgba(0,0,0,0.92),
    0 8px 15px rgba(0,0,0,0.36) !important;
}

/* Softer active tab, less yellow-button */
.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"],
.ef-form-shell.order-form-tabs .e-n-tab-title[aria-selected="true"],
.order-form-tabs .e-n-tab-title[aria-selected="true"] {
  background:
    linear-gradient(90deg, rgba(76, 55, 20, 0.52), rgba(255,255,255,0.07) 30%, rgba(255,255,255,0.018) 52%, rgba(76, 55, 20, 0.50)),
    radial-gradient(circle at 50% -16%, rgba(255,255,255,0.46), transparent 42%),
    linear-gradient(90deg, #8e7135 0%, #cdb066 32%, #e8d28d 52%, #b7974d 76%, #7c612d 100%) !important;

  border-color: rgba(255, 232, 165, 0.70) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.58),
    inset 0 -1px 0 rgba(61, 43, 16, 0.82),
    0 0 0 1px rgba(0,0,0,0.92),
    0 0 22px rgba(216, 189, 114, 0.22),
    0 13px 24px rgba(0,0,0,0.56) !important;
}

/* Active tab text, still readable but less harsh */
.ef-form-shell .order-form-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text,
.ef-form-shell.order-form-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text,
.order-form-tabs .e-n-tab-title[aria-selected="true"] .e-n-tab-title-text {
  color: #100c04 !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,0.36),
    0 -1px 0 rgba(80, 57, 19, 0.22) !important;
}

/* Cleaner rail bottom edge */
.ef-form-shell .order-form-tabs .e-n-tabs-heading,
.ef-form-shell.order-form-tabs .e-n-tabs-heading,
.order-form-tabs .e-n-tabs-heading {
  border-bottom-color: rgba(216, 189, 114, 0.42) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.052),
    inset 0 -1px 0 rgba(0,0,0,0.94),
    0 12px 26px rgba(0,0,0,0.42),
    0 0 18px rgba(216, 189, 114, 0.05) !important;
}

/* =========================================================
   EFM FORM 9 PAYMENT / CHECKOUT CSS
   Canonical Checkout Styling v6.5
   Replaces prior checkout cleanup/payment/footer/snapshot patches
========================================================= */

body.efm-payment-active #frm_form_9_container {
  --efm-pay-bg: rgba(13, 15, 21, 0.96);
  --efm-pay-panel: rgba(19, 21, 28, 0.96);
  --efm-pay-panel-2: rgba(31, 31, 29, 0.92);
  --efm-pay-line: rgba(217, 189, 106, 0.28);
  --efm-pay-line-soft: rgba(255, 255, 255, 0.075);
  --efm-pay-gold: #d7b85c;
  --efm-pay-gold-2: #f4df98;
  --efm-pay-gold-3: #9b7830;
  --efm-pay-ink: #f7f0dc;
  --efm-pay-muted: rgba(247, 240, 220, 0.72);
  --efm-pay-dark: #0b0d12;
}

/* =========================================================
   MAIN PAYMENT TAB SHELL
========================================================= */

body.efm-payment-active #frm_form_9_container,
body.efm-payment-active #frm_form_9_container .frm_forms,
body.efm-payment-active #frm_form_9_container form,
body.efm-payment-active #frm_form_9_container .frm_fields_container {
  padding-bottom: 145px !important;
}

body.efm-payment-active #efm-standalone-checkout-mount,
body.efm-payment-active .efm-standalone-checkout-mount,
body.efm-payment-active #ef-woo-checkout-panel,
body.efm-payment-active #efm-checkout-panel,
body.efm-payment-active .ef-woo-checkout-mount {
  padding: 0 14px 130px !important;
  margin: 0 0 88px !important;
}

body.efm-payment-active .woocommerce-checkout,
body.efm-payment-active form.checkout,
body.efm-payment-active form.woocommerce-checkout {
  width: 100% !important;
  max-width: 100% !important;
}

body.efm-payment-active .efm-checkout-card,
body.efm-payment-active .ef-checkout-card {
  padding: 14px 14px 118px !important;
  margin-top: 0 !important;
  overflow: visible !important;
}

/* Sticky footer stays above, but checkout gets enough breathing room */
body.efm-payment-active #ff-absolute-footer,
body.efm-payment-active .ff-absolute-footer,
body.efm-payment-active .efm-sticky-footer {
  z-index: 80 !important;
}

/* =========================================================
   ORDER SUMMARY CARD
========================================================= */

body.efm-payment-active .efm-checkout-card h3,
body.efm-payment-active .ef-checkout-card h3,
body.efm-payment-active h3.order_review_heading {
  color: var(--efm-pay-ink) !important;
  font-size: 27px !important;
  line-height: 1.1 !important;
  margin: 0 0 14px !important;
  letter-spacing: -0.02em !important;
}

body.efm-payment-active #order_review.woocommerce-checkout-review-order {
  display: none !important;
}

/* =========================================================
   COMPACT CAMPAIGN DETAILS SNAPSHOT
   v6.5: one scrollbar only
========================================================= */

/* Outer snapshot shell, no scrolling here */
body.efm-payment-active .efm-checkout-snapshot,
body.efm-payment-active #efm-checkout-snapshot,
body.efm-payment-active #efm-checkout-debug,
body.efm-payment-active .ef-checkout-snapshot,
body.efm-payment-active #ef-checkout-snapshot,
body.efm-payment-active .efm-campaign-snapshot,
body.efm-payment-active #efm-campaign-snapshot {
  max-height: none !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 0 14px !important;
  border: 1px solid rgba(217, 189, 106, 0.25) !important;
  border-radius: 13px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.012)),
    rgba(28, 29, 32, 0.92) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.06),
    0 12px 28px rgba(0,0,0,0.25) !important;
}

/* Snapshot header */
body.efm-payment-active .efm-checkout-snapshot h3,
body.efm-payment-active #efm-checkout-snapshot h3,
body.efm-payment-active #efm-checkout-debug .efm-checkout-snapshot__head,
body.efm-payment-active .ef-checkout-snapshot h3,
body.efm-payment-active #ef-checkout-snapshot h3,
body.efm-payment-active .efm-campaign-snapshot h3,
body.efm-payment-active #efm-campaign-snapshot h3,
body.efm-payment-active .efm-checkout-snapshot-title,
body.efm-payment-active .ef-checkout-snapshot-title {
  position: relative !important;
  top: auto !important;
  z-index: 3 !important;
  margin: 0 !important;
  padding: 9px 14px !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  color: var(--efm-pay-ink) !important;
  background:
    linear-gradient(180deg, rgba(70, 67, 56, 0.96), rgba(40, 40, 38, 0.96)) !important;
  border-bottom: 1px solid rgba(217, 189, 106, 0.22) !important;
}

/* Inner scroll only */
body.efm-payment-active .efm-checkout-snapshot__scroll {
  max-height: 108px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 0 10px 5px !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(217, 189, 106, 0.9) rgba(10, 11, 15, 0.88);
}

/* Fallback if bridge renders table directly without inner scroll */
body.efm-payment-active .efm-checkout-snapshot:not(:has(.efm-checkout-snapshot__scroll)),
body.efm-payment-active #efm-checkout-debug:not(:has(.efm-checkout-snapshot__scroll)) {
  max-height: 155px !important;
  overflow-y: auto !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(217, 189, 106, 0.9) rgba(10, 11, 15, 0.88);
}

/* Snapshot table */
body.efm-payment-active .efm-checkout-snapshot table,
body.efm-payment-active #efm-checkout-snapshot table,
body.efm-payment-active #efm-checkout-debug table,
body.efm-payment-active .ef-checkout-snapshot table,
body.efm-payment-active #ef-checkout-snapshot table,
body.efm-payment-active .efm-campaign-snapshot table,
body.efm-payment-active #efm-campaign-snapshot table {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
}

body.efm-payment-active .efm-checkout-snapshot tr,
body.efm-payment-active #efm-checkout-snapshot tr,
body.efm-payment-active #efm-checkout-debug tr,
body.efm-payment-active .ef-checkout-snapshot tr,
body.efm-payment-active #ef-checkout-snapshot tr,
body.efm-payment-active .efm-campaign-snapshot tr,
body.efm-payment-active #efm-campaign-snapshot tr,
body.efm-payment-active .efm-checkout-snapshot__row {
  display: grid !important;
  grid-template-columns: 210px minmax(0, 1fr) !important;
  align-items: center !important;
  min-height: 31px !important;
  border-bottom: 1px solid rgba(255,255,255,0.055) !important;
}

body.efm-payment-active .efm-checkout-snapshot th,
body.efm-payment-active .efm-checkout-snapshot td,
body.efm-payment-active #efm-checkout-snapshot th,
body.efm-payment-active #efm-checkout-snapshot td,
body.efm-payment-active #efm-checkout-debug th,
body.efm-payment-active #efm-checkout-debug td,
body.efm-payment-active .ef-checkout-snapshot th,
body.efm-payment-active .ef-checkout-snapshot td,
body.efm-payment-active #ef-checkout-snapshot th,
body.efm-payment-active #ef-checkout-snapshot td,
body.efm-payment-active .efm-campaign-snapshot th,
body.efm-payment-active .efm-campaign-snapshot td,
body.efm-payment-active #efm-campaign-snapshot th,
body.efm-payment-active #efm-campaign-snapshot td,
body.efm-payment-active .efm-checkout-snapshot__label,
body.efm-payment-active .efm-checkout-snapshot__value {
  display: block !important;
  padding: 6px 12px !important;
  font-size: 12px !important;
  line-height: 1.1 !important;
  border: 0 !important;
  color: var(--efm-pay-ink) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.efm-payment-active .efm-checkout-snapshot th,
body.efm-payment-active #efm-checkout-snapshot th,
body.efm-payment-active #efm-checkout-debug th,
body.efm-payment-active .ef-checkout-snapshot th,
body.efm-payment-active #ef-checkout-snapshot th,
body.efm-payment-active .efm-campaign-snapshot th,
body.efm-payment-active #efm-campaign-snapshot th,
body.efm-payment-active .efm-checkout-snapshot__label {
  color: var(--efm-pay-muted) !important;
  font-weight: 800 !important;
  text-align: left !important;
}

body.efm-payment-active .efm-checkout-snapshot td,
body.efm-payment-active #efm-checkout-snapshot td,
body.efm-payment-active #efm-checkout-debug td,
body.efm-payment-active .ef-checkout-snapshot td,
body.efm-payment-active #ef-checkout-snapshot td,
body.efm-payment-active .efm-campaign-snapshot td,
body.efm-payment-active #efm-campaign-snapshot td,
body.efm-payment-active .efm-checkout-snapshot__value {
  text-align: left !important;
  font-weight: 650 !important;
}

/* Snapshot scrollbar */
body.efm-payment-active .efm-checkout-snapshot__scroll::-webkit-scrollbar,
body.efm-payment-active .efm-checkout-snapshot::-webkit-scrollbar,
body.efm-payment-active #efm-checkout-snapshot::-webkit-scrollbar,
body.efm-payment-active #efm-checkout-debug::-webkit-scrollbar,
body.efm-payment-active .ef-checkout-snapshot::-webkit-scrollbar,
body.efm-payment-active #ef-checkout-snapshot::-webkit-scrollbar,
body.efm-payment-active .efm-campaign-snapshot::-webkit-scrollbar,
body.efm-payment-active #efm-campaign-snapshot::-webkit-scrollbar {
  width: 9px !important;
}

body.efm-payment-active .efm-checkout-snapshot__scroll::-webkit-scrollbar-track,
body.efm-payment-active .efm-checkout-snapshot::-webkit-scrollbar-track,
body.efm-payment-active #efm-checkout-snapshot::-webkit-scrollbar-track,
body.efm-payment-active #efm-checkout-debug::-webkit-scrollbar-track,
body.efm-payment-active .ef-checkout-snapshot::-webkit-scrollbar-track,
body.efm-payment-active #ef-checkout-snapshot::-webkit-scrollbar-track,
body.efm-payment-active .efm-campaign-snapshot::-webkit-scrollbar-track,
body.efm-payment-active #efm-campaign-snapshot::-webkit-scrollbar-track {
  background: rgba(7, 8, 11, 0.88) !important;
  border-radius: 999px !important;
}

body.efm-payment-active .efm-checkout-snapshot__scroll::-webkit-scrollbar-thumb,
body.efm-payment-active .efm-checkout-snapshot::-webkit-scrollbar-thumb,
body.efm-payment-active #efm-checkout-snapshot::-webkit-scrollbar-thumb,
body.efm-payment-active #efm-checkout-debug::-webkit-scrollbar-thumb,
body.efm-payment-active .ef-checkout-snapshot::-webkit-scrollbar-thumb,
body.efm-payment-active #ef-checkout-snapshot::-webkit-scrollbar-thumb,
body.efm-payment-active .efm-campaign-snapshot::-webkit-scrollbar-thumb,
body.efm-payment-active #efm-campaign-snapshot::-webkit-scrollbar-thumb {
  background:
    linear-gradient(180deg, var(--efm-pay-gold-2), var(--efm-pay-gold), var(--efm-pay-gold-3)) !important;
  border-radius: 999px !important;
  border: 2px solid rgba(8, 9, 12, 0.9) !important;
}

/* =========================================================
   PAYMENT METHOD AREA
========================================================= */

body.efm-payment-active #payment,
body.efm-payment-active .woocommerce-checkout-payment {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.01)),
    rgba(14, 16, 22, 0.94) !important;
  border: 1px solid rgba(217, 189, 106, 0.18) !important;
  border-radius: 14px !important;
  padding: 12px 14px 16px !important;
  margin: 0 0 82px !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.04),
    0 14px 30px rgba(0,0,0,0.22) !important;
}

body.efm-payment-active #payment ul.payment_methods,
body.efm-payment-active .woocommerce-checkout-payment ul.payment_methods {
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

body.efm-payment-active #payment ul.payment_methods li,
body.efm-payment-active .woocommerce-checkout-payment ul.payment_methods li {
  margin: 0 0 10px !important;
  padding: 0 !important;
  color: var(--efm-pay-ink) !important;
}

body.efm-payment-active #payment label,
body.efm-payment-active .woocommerce-checkout-payment label {
  color: var(--efm-pay-ink) !important;
  font-size: 13px !important;
  font-weight: 750 !important;
}

body.efm-payment-active #payment input[type="radio"] {
  accent-color: #d7b85c;
  transform: translateY(1px);
}

body.efm-payment-active .payment_method_stripe label,
body.efm-payment-active .payment_method_cod label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* =========================================================
   STRIPE / PAYMENT ELEMENT OUTER SHELL
========================================================= */

body.efm-payment-active .payment_box,
body.efm-payment-active .payment_box.payment_method_stripe,
body.efm-payment-active .payment_method_stripe .payment_box {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.012)),
    rgba(22, 24, 31, 0.96) !important;
  border: 1px solid rgba(217, 189, 106, 0.18) !important;
  border-radius: 13px !important;
  padding: 12px !important;
  margin: 12px 0 14px !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.04),
    0 10px 24px rgba(0,0,0,0.22) !important;
}

body.efm-payment-active .wc-stripe-upe-form,
body.efm-payment-active fieldset#wc-stripe-upe-form {
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.efm-payment-active .wc-stripe-upe-element,
body.efm-payment-active .StripeElement {
  width: 100% !important;
  max-width: 100% !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.01)),
    rgba(17, 19, 25, 0.96) !important;
  border: 1px solid rgba(217, 189, 106, 0.2) !important;
  border-radius: 12px !important;
  padding: 10px !important;
  margin: 0 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.045),
    0 8px 20px rgba(0,0,0,0.18) !important;
}

body.efm-payment-active .wc-stripe-upe-element iframe,
body.efm-payment-active .StripeElement iframe {
  width: 100% !important;
  max-width: 100% !important;
  border-radius: 10px !important;
}

/* Woo fields outside Stripe iframe */
body.efm-payment-active .woocommerce-checkout input[type="text"],
body.efm-payment-active .woocommerce-checkout input[type="email"],
body.efm-payment-active .woocommerce-checkout input[type="tel"],
body.efm-payment-active .woocommerce-checkout select,
body.efm-payment-active .woocommerce-checkout textarea {
  min-height: 38px !important;
  height: 38px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(217, 189, 106, 0.24) !important;
  background: rgba(245, 245, 245, 0.96) !important;
  color: #141414 !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.14) !important;
}

/* =========================================================
   COUPON AREA
========================================================= */

body.efm-payment-active .checkout_coupon,
body.efm-payment-active .coupon,
body.efm-payment-active .efm-checkout-coupon,
body.efm-payment-active #efm-checkout-coupon,
body.efm-payment-active .ef-checkout-coupon,
body.efm-payment-active #ef-checkout-coupon {
  margin: 16px 0 10px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

body.efm-payment-active input[name="coupon_code"],
body.efm-payment-active #coupon_code {
  width: 172px !important;
  max-width: 48vw !important;
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 12px !important;
  border-radius: 7px !important;
  border: 1px solid rgba(217, 189, 106, 0.24) !important;
  background: rgba(247, 247, 247, 0.98) !important;
  color: #171717 !important;
  font-size: 12px !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.12) !important;
}

body.efm-payment-active button[name="apply_coupon"],
body.efm-payment-active .checkout_coupon button,
body.efm-payment-active .coupon button {
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 15px !important;
  border-radius: 9px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  line-height: 34px !important;
  color: #111 !important;
  border: 1px solid rgba(255, 239, 177, 0.68) !important;
  background:
    linear-gradient(90deg, #9f7a32 0%, #f5df98 48%, #b08b3e 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.55),
    0 8px 18px rgba(0,0,0,0.25) !important;
  text-transform: uppercase !important;
}

body.efm-payment-active button[name="apply_coupon"]:hover,
body.efm-payment-active .checkout_coupon button:hover,
body.efm-payment-active .coupon button:hover {
  filter: brightness(1.07) !important;
}

/* =========================================================
   TOTAL PILL
========================================================= */

body.efm-payment-active .efm-order-total,
body.efm-payment-active .efm-checkout-total-wrap,
body.efm-payment-active #efm-checkout-total-wrap,
body.efm-payment-active .ef-checkout-total-wrap,
body.efm-payment-active #ef-checkout-total-wrap {
  margin: 8px auto 18px !important;
  min-height: 36px !important;
  height: 36px !important;
  padding: 0 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  border-radius: 999px !important;
  border: 1px solid rgba(217, 189, 106, 0.34) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.01)),
    rgba(16, 17, 21, 0.96) !important;
  color: var(--efm-pay-ink) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.05),
    0 8px 18px rgba(0,0,0,0.24) !important;
}

/* If wrapper is a block flex container, center the inner pill */
body.efm-payment-active .efm-checkout-total-wrap,
body.efm-payment-active #efm-checkout-total-wrap,
body.efm-payment-active .ef-checkout-total-wrap,
body.efm-payment-active #ef-checkout-total-wrap {
  display: flex !important;
}

body.efm-payment-active .efm-order-total *,
body.efm-payment-active .efm-checkout-total-wrap *,
body.efm-payment-active #efm-checkout-total-wrap *,
body.efm-payment-active .ef-checkout-total-wrap *,
body.efm-payment-active #ef-checkout-total-wrap * {
  line-height: 1 !important;
}

/* =========================================================
   COMPLETE ORDER BUTTON
========================================================= */

body.efm-payment-active #place_order,
body.efm-payment-active button#place_order,
body.efm-payment-active button[name="woocommerce_checkout_place_order"],
body.efm-payment-active .woocommerce #payment #place_order,
body.efm-payment-active .woocommerce-page #payment #place_order {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 46px !important;
  height: 46px !important;
  line-height: 1 !important;
  margin: 16px 0 100px !important;
  padding: 0 24px !important;
  border-radius: 13px !important;
  position: relative !important;
  z-index: 10 !important;
  color: #111 !important;
  font-size: 14px !important;
  font-weight: 950 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  border: 1px solid rgba(255, 239, 177, 0.72) !important;
  background:
    linear-gradient(90deg, #9d7931 0%, #f7e4a5 50%, #b58d3c 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.62),
    0 12px 28px rgba(0,0,0,0.32) !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

body.efm-payment-active #place_order:hover,
body.efm-payment-active button#place_order:hover,
body.efm-payment-active button[name="woocommerce_checkout_place_order"]:hover {
  filter: brightness(1.06) !important;
}

/* =========================================================
   SECURE CHECKOUT LOADER / GATE
========================================================= */

body.efm-payment-active .efm-secure-checkout-loader,
body.efm-payment-active #efm-secure-checkout-loader {
  width: 100% !important;
  min-height: 230px !important;
  display: grid !important;
  place-items: center !important;
  padding: 30px 20px !important;
  margin: 0 0 18px !important;
  border: 1px solid rgba(217, 189, 106, 0.28) !important;
  border-radius: 18px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(217,189,106,0.16), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01)),
    rgba(12, 14, 19, 0.96) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.06),
    0 18px 42px rgba(0,0,0,0.34) !important;
}

body.efm-payment-active .efm-secure-checkout-loader__inner {
  text-align: center !important;
  color: var(--efm-pay-ink) !important;
}

body.efm-payment-active .efm-secure-checkout-loader__spinner {
  width: 46px !important;
  height: 46px !important;
  margin: 0 auto 16px !important;
  border-radius: 999px !important;
  border: 3px solid rgba(217, 189, 106, 0.18) !important;
  border-top-color: rgba(244, 223, 152, 0.98) !important;
  animation: efmSecureCheckoutSpin 0.85s linear infinite !important;
  box-shadow: 0 0 20px rgba(217, 189, 106, 0.18) !important;
}

body.efm-payment-active .efm-secure-checkout-loader__title {
  font-size: 20px !important;
  font-weight: 850 !important;
  letter-spacing: 0.02em !important;
  margin: 0 0 6px !important;
  color: var(--efm-pay-ink) !important;
}

body.efm-payment-active .efm-secure-checkout-loader__copy {
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: var(--efm-pay-muted) !important;
  max-width: 440px !important;
  margin: 0 auto !important;
}

@keyframes efmSecureCheckoutSpin {
  to {
    transform: rotate(360deg);
  }
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 760px) {
  body.efm-payment-active #efm-standalone-checkout-mount,
  body.efm-payment-active .efm-standalone-checkout-mount,
  body.efm-payment-active #ef-woo-checkout-panel,
  body.efm-payment-active #efm-checkout-panel,
  body.efm-payment-active .ef-woo-checkout-mount {
    padding: 0 10px 135px !important;
  }

  body.efm-payment-active .efm-checkout-card h3,
  body.efm-payment-active .ef-checkout-card h3,
  body.efm-payment-active h3.order_review_heading {
    font-size: 23px !important;
  }

  body.efm-payment-active .efm-checkout-snapshot__scroll {
    max-height: 104px !important;
  }

  body.efm-payment-active .efm-checkout-snapshot tr,
  body.efm-payment-active #efm-checkout-snapshot tr,
  body.efm-payment-active #efm-checkout-debug tr,
  body.efm-payment-active .ef-checkout-snapshot tr,
  body.efm-payment-active #ef-checkout-snapshot tr,
  body.efm-payment-active .efm-campaign-snapshot tr,
  body.efm-payment-active #efm-campaign-snapshot tr,
  body.efm-payment-active .efm-checkout-snapshot__row {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 5px 0 !important;
  }

  body.efm-payment-active .efm-checkout-snapshot th,
  body.efm-payment-active .efm-checkout-snapshot td,
  body.efm-payment-active #efm-checkout-snapshot th,
  body.efm-payment-active #efm-checkout-snapshot td,
  body.efm-payment-active #efm-checkout-debug th,
  body.efm-payment-active #efm-checkout-debug td,
  body.efm-payment-active .ef-checkout-snapshot th,
  body.efm-payment-active .ef-checkout-snapshot td,
  body.efm-payment-active #ef-checkout-snapshot th,
  body.efm-payment-active #ef-checkout-snapshot td,
  body.efm-payment-active .efm-campaign-snapshot th,
  body.efm-payment-active .efm-campaign-snapshot td,
  body.efm-payment-active #efm-campaign-snapshot th,
  body.efm-payment-active #efm-campaign-snapshot td,
  body.efm-payment-active .efm-checkout-snapshot__label,
  body.efm-payment-active .efm-checkout-snapshot__value {
    padding: 4px 12px !important;
    white-space: normal !important;
  }

  body.efm-payment-active .checkout_coupon,
  body.efm-payment-active .coupon,
  body.efm-payment-active .efm-checkout-coupon,
  body.efm-payment-active #efm-checkout-coupon,
  body.efm-payment-active .ef-checkout-coupon,
  body.efm-payment-active #ef-checkout-coupon {
    gap: 8px !important;
  }

  body.efm-payment-active input[name="coupon_code"],
  body.efm-payment-active #coupon_code {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }

  body.efm-payment-active button[name="apply_coupon"],
  body.efm-payment-active .checkout_coupon button,
  body.efm-payment-active .coupon button {
    width: 100% !important;
  }

  body.efm-payment-active #place_order,
  body.efm-payment-active button#place_order,
  body.efm-payment-active button[name="woocommerce_checkout_place_order"] {
    margin-bottom: 115px !important;
  }
}

/* =========================================================
   EFM / WooCommerce My Account Logged-Out Login Styling
   Targets: /my-account/ logged-out Login + Register page
========================================================= */

.woocommerce #customer_login {
  max-width: 1180px;
  margin: 34px auto 90px;
  padding: 0 22px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 34px;
  align-items: start;
}

/* Login / Register columns */
.woocommerce #customer_login .u-column1,
.woocommerce #customer_login .u-column2 {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}

/* Section headings */
.woocommerce #customer_login h2 {
  margin: 0 0 18px;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #f7f0dc;
  text-shadow:
    0 1px 0 rgba(255,255,255,0.12),
    0 14px 32px rgba(0,0,0,0.75);
}

/* Form cards */
.woocommerce #customer_login form.login,
.woocommerce #customer_login form.register {
  position: relative;
  overflow: hidden;
  min-height: 286px;
  padding: 30px 30px 28px;
  border-radius: 18px;
  border: 1px solid rgba(232, 205, 139, 0.46);
  background:
    radial-gradient(circle at 12% 0%, rgba(232,205,139,0.16), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025)),
    rgba(8, 8, 8, 0.92);
  box-shadow:
    0 22px 65px rgba(0,0,0,0.62),
    inset 0 1px 0 rgba(255,255,255,0.11);
  backdrop-filter: blur(14px);
}

/* Subtle top shine */
.woocommerce #customer_login form.login::before,
.woocommerce #customer_login form.register::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,0.42),
    rgba(232,205,139,0.55),
    transparent
  );
  pointer-events: none;
}

/* Labels */
.woocommerce #customer_login label {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.015em;
  color: rgba(255,255,255,0.86);
}

/* Required stars */
.woocommerce #customer_login .required {
  color: #d9b86f;
  text-decoration: none;
}

/* Inputs */
.woocommerce #customer_login input.input-text,
.woocommerce #customer_login input[type="text"],
.woocommerce #customer_login input[type="email"],
.woocommerce #customer_login input[type="password"] {
  width: 100%;
  height: 46px;
  padding: 0 14px;
  border-radius: 10px;
  border: 1px solid rgba(232,205,139,0.34);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(235,235,235,0.95));
  color: #151515;
  font-size: 15px;
  font-weight: 600;
  box-shadow:
    inset 0 1px 2px rgba(0,0,0,0.16),
    0 0 0 0 rgba(232,205,139,0);
  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.woocommerce #customer_login input.input-text:focus,
.woocommerce #customer_login input[type="text"]:focus,
.woocommerce #customer_login input[type="email"]:focus,
.woocommerce #customer_login input[type="password"]:focus {
  outline: none;
  border-color: rgba(232,205,139,0.9);
  box-shadow:
    inset 0 1px 2px rgba(0,0,0,0.12),
    0 0 0 3px rgba(232,205,139,0.18),
    0 0 26px rgba(232,205,139,0.14);
}

/* Password reveal icon alignment */
.woocommerce #customer_login .show-password-input {
  top: 50%;
  transform: translateY(-50%);
  color: #191919;
  opacity: 0.75;
}

/* Form rows */
.woocommerce #customer_login .form-row {
  margin: 0 0 20px;
  padding: 0;
}

/* Paragraph text in register card */
.woocommerce #customer_login form.register p,
.woocommerce #customer_login form.login p {
  color: rgba(255,255,255,0.74);
  font-size: 14px;
  line-height: 1.7;
}

.woocommerce #customer_login form.register p {
  max-width: 94%;
}

/* Privacy policy link / lost password */
.woocommerce #customer_login a {
  color: #d9b86f;
  font-weight: 700;
  text-decoration: none;
}

.woocommerce #customer_login a:hover {
  color: #fff0b8;
  text-decoration: underline;
}

/* Remember me */
.woocommerce #customer_login .woocommerce-form__label-for-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 0 12px;
  color: rgba(255,255,255,0.82);
  font-size: 13px;
  font-weight: 700;
}

.woocommerce #customer_login input[type="checkbox"] {
  accent-color: #d9b86f;
}

/* Buttons */
.woocommerce #customer_login button.button,
.woocommerce #customer_login .woocommerce-button {
  min-height: 42px;
  padding: 0 24px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(232,205,139,0.62) !important;
  background:
    linear-gradient(180deg, #fff4c8 0%, #d9b86f 42%, #a57a2c 100%) !important;
  color: #17120a !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.035em;
  text-transform: uppercase;
  text-shadow: 0 1px 0 rgba(255,255,255,0.35);
  box-shadow:
    0 10px 28px rgba(0,0,0,0.45),
    inset 0 1px 0 rgba(255,255,255,0.72),
    inset 0 -1px 0 rgba(0,0,0,0.28);
  transition:
    transform 160ms ease,
    filter 160ms ease,
    box-shadow 160ms ease;
}

.woocommerce #customer_login button.button:hover,
.woocommerce #customer_login .woocommerce-button:hover {
  transform: translateY(-1px);
  filter: brightness(1.08);
  box-shadow:
    0 14px 34px rgba(0,0,0,0.52),
    0 0 22px rgba(232,205,139,0.18),
    inset 0 1px 0 rgba(255,255,255,0.78);
}

/* Lost password placement */
.woocommerce #customer_login .woocommerce-LostPassword {
  margin-top: 18px;
  font-size: 13px;
}

/* Notice wrapper */
.woocommerce .woocommerce-notices-wrapper {
  max-width: 1120px;
  margin: 18px auto 0;
  padding: 0 22px;
}

/* Woo notices */
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
  border-top-color: #d9b86f;
  background: rgba(12,12,12,0.94);
  color: rgba(255,255,255,0.86);
  border-radius: 14px;
  border: 1px solid rgba(232,205,139,0.34);
  box-shadow: 0 14px 38px rgba(0,0,0,0.42);
}

/* Optional: give the whole login area breathing room from footer */
.woocommerce-account:not(.logged-in) .woocommerce {
  padding-bottom: 40px;
}

/* Mobile */
@media (max-width: 860px) {
  .woocommerce #customer_login {
    grid-template-columns: 1fr;
    gap: 28px;
    margin-top: 24px;
    padding: 0 16px;
  }

  .woocommerce #customer_login form.login,
  .woocommerce #customer_login form.register {
    padding: 24px 20px;
    border-radius: 16px;
  }

  .woocommerce #customer_login h2 {
    font-size: 30px;
  }

  .woocommerce #customer_login .woocommerce-form__label-for-checkbox {
    display: flex;
    margin: 14px 0 0;
  }
}

/* =========================================================
   EFM Woo My Account Logged-Out Layout Fix
   Keeps Login and Register aligned side by side
========================================================= */

.woocommerce #customer_login {
  width: min(1120px, calc(100% - 48px));
  margin: 60px auto 90px !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
}

.woocommerce #customer_login::before,
.woocommerce #customer_login::after {
  display: none !important;
  content: none !important;
}

.woocommerce #customer_login .u-column1,
.woocommerce #customer_login .u-column2 {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce #customer_login .u-column1 {
  grid-column: 1;
  grid-row: 1;
}

.woocommerce #customer_login .u-column2 {
  grid-column: 2;
  grid-row: 1;
}

.woocommerce #customer_login h2 {
  margin: 0 0 22px !important;
}

.woocommerce #customer_login form.login,
.woocommerce #customer_login form.register {
  margin: 0 !important;
  width: 100% !important;
  min-height: 325px;
}

@media (max-width: 850px) {
  .woocommerce #customer_login {
    width: min(100% - 32px, 560px);
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .woocommerce #customer_login .u-column1,
  .woocommerce #customer_login .u-column2 {
    grid-column: 1;
  }

  .woocommerce #customer_login .u-column1 {
    grid-row: 1;
  }

  .woocommerce #customer_login .u-column2 {
    grid-row: 2;
  }
}

.efm-email-area-fix-notice {
  margin: 0 0 18px;
  padding: 16px 18px;
  border: 1px solid rgba(232, 204, 128, 0.65);
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(232, 204, 128, 0.18), rgba(18, 18, 18, 0.92)),
    rgba(12, 12, 12, 0.92);
  box-shadow:
    0 16px 38px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
  color: #f7ebc0;
}

.efm-email-area-fix-notice strong {
  display: block;
  margin-bottom: 6px;
  font-size: 15px;
  line-height: 1.2;
  letter-spacing: 0.02em;
  color: #fff1b8;
}

.efm-email-area-fix-notice span {
  display: block;
  font-size: 14px;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.88);
}