.elementor-9523 .elementor-element.elementor-element-21c2d6b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS *//* =========================================================
   FAQ PAGE PARENT CONTAINER
   Shared EflyerMarketing luxe shell background
   Add class to Elementor parent container:
   efm-faq-page-shell
========================================================= */

.efm-faq-page-shell{
  position:relative;
  overflow:hidden;
  width:min(1000px, calc(100% - 32px));
  margin:32px auto 72px;
  padding:68px 56px 78px;
  color:#f6efe0;

  background:
    radial-gradient(circle at 50% -10%, rgba(255,255,255,.06), transparent 26%),
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.022), transparent 19%),
    radial-gradient(circle at 82% 0%, rgba(255,255,255,.022), transparent 19%),
    linear-gradient(180deg, #090909 0%, #040404 22%, #020202 58%, #010101 100%);

  box-shadow:
    inset 0 0 0 1px rgba(214,177,93,.09),
    inset 0 1px 0 rgba(255,255,255,.025),
    0 34px 90px rgba(0,0,0,.38);
}

.efm-faq-page-shell::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(90deg, rgba(214,177,93,.055), rgba(255,255,255,.008) 16%, rgba(255,255,255,.008) 84%, rgba(214,177,93,.055)),
    linear-gradient(90deg, transparent 0%, rgba(214,177,93,.035) 50%, transparent 100%),
    linear-gradient(180deg, rgba(255,255,255,.02), transparent 20%, transparent 80%, rgba(214,177,93,.03));
  opacity:.9;
}

.efm-faq-page-shell::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:linear-gradient(180deg, rgba(214,177,93,.03), transparent 12%, transparent 88%, rgba(214,177,93,.03));
}

.efm-faq-page-shell > *{
  position:relative;
  z-index:1;
}

/* =========================================================
   REMOVE FAQ HTML BLOCK BACKGROUND
   Parent container now owns the page shell
========================================================= */

.efm-faq-page{
  background:transparent !important;
  margin:0 !important;
  padding:0 !important;
  color:#f6efe0 !important;

  --efm-bg:#020202;
  --efm-panel:rgba(255,255,255,.045);
  --efm-panel-strong:rgba(255,255,255,.07);
  --efm-border:rgba(214,177,93,.18);
  --efm-gold:#d6b15d;
  --efm-gold-soft:#f3dfaa;
  --efm-text:#f6efe0;
  --efm-muted:rgba(246,239,224,.72);
  --efm-shadow:0 24px 70px rgba(0,0,0,.34);
}

.efm-faq-shell{
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
}

/* =========================================================
   FAQ HERO MATCHING DISTRIBUTION/Pricing STYLE
========================================================= */

.efm-faq-hero{
  max-width:780px !important;
  margin:0 auto 42px !important;
  text-align:center;
}

.efm-faq-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin:0 0 18px !important;
  color:#f3dfaa !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:2.8px !important;
  text-transform:uppercase;
}

.efm-faq-kicker::before,
.efm-faq-kicker::after{
  content:"";
  display:block;
  width:42px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(214,177,93,.82));
}

.efm-faq-kicker::after{
  background:linear-gradient(90deg, rgba(214,177,93,.82), transparent);
}

.efm-faq-hero h1{
  margin:0 auto 18px !important;
  max-width:780px;
  font-size:clamp(44px, 5.8vw, 76px) !important;
  line-height:.94 !important;
  font-weight:800 !important;
  letter-spacing:-.055em !important;
  color:#f6efe0 !important;
  text-wrap:balance;
  text-shadow:
    0 2px 0 rgba(255,255,255,.018),
    0 14px 34px rgba(0,0,0,.4);
}

.efm-faq-hero p{
  max-width:650px !important;
  margin:0 auto !important;
  font-size:clamp(16px, 1.8vw, 19px) !important;
  line-height:1.72 !important;
  color:rgba(246,239,224,.82) !important;
}

/* =========================================================
   FAQ LAYOUT / NAV / CARDS
========================================================= */

.efm-faq-grid{
  display:grid;
  grid-template-columns:250px minmax(0, 1fr);
  gap:26px;
  align-items:start;
}

.efm-faq-nav{
  position:sticky;
  top:120px;
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:24px;
  border:1px solid rgba(214,177,93,.14);
  background:
    radial-gradient(circle at 12% 0%, rgba(214,177,93,.08), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.007)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.026),
    0 16px 38px rgba(0,0,0,.18) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.efm-faq-nav a{
  display:block;
  padding:14px 14px;
  border-radius:16px;
  border:1px solid rgba(214,177,93,.12) !important;
  background:rgba(255,255,255,.025) !important;
  color:#f6efe0 !important;
  font-size:14px;
  line-height:1.2;
  font-weight:800;
  text-decoration:none !important;
  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease,
    color .18s ease;
}

.efm-faq-nav a:hover{
  transform:translateY(-1px);
  border-color:rgba(243,223,170,.38) !important;
  background:rgba(214,177,93,.08) !important;
  color:#f3dfaa !important;
}

.efm-faq-content{
  display:grid;
  gap:28px;
}

.efm-faq-group{
  padding:clamp(20px, 3vw, 28px) !important;
  border-radius:26px !important;
  border:1px solid rgba(214,177,93,.14) !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(214,177,93,.08), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.006)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 0 0 1px rgba(214,177,93,.035),
    0 16px 38px rgba(0,0,0,.18) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  scroll-margin-top:140px;
}

.efm-faq-group h2{
  margin:0 0 18px !important;
  color:#f3dfaa !important;
  font-size:clamp(26px, 3vw, 38px) !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:-.04em !important;
}

/* =========================================================
   FAQ ACCORDIONS
========================================================= */

.efm-faq-group details{
  overflow:hidden;
  border-radius:18px !important;
  border:1px solid rgba(214,177,93,.13) !important;
  background:rgba(0,0,0,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.022);
}

.efm-faq-group details + details{
  margin-top:12px;
}

.efm-faq-group summary{
  position:relative;
  cursor:pointer;
  list-style:none;
  padding:18px 56px 18px 18px !important;
  color:#f6efe0 !important;
  font-weight:800 !important;
  line-height:1.35;
}

.efm-faq-group summary::-webkit-details-marker{
  display:none;
}

.efm-faq-group summary::after{
  content:"+";
  position:absolute;
  right:18px;
  top:50%;
  width:28px;
  height:28px;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  border-radius:999px;
  border:1px solid rgba(214,177,93,.38) !important;
  color:#f3dfaa !important;
  font-size:20px;
  line-height:1;
  background:rgba(0,0,0,.18);
  box-shadow:0 0 14px rgba(214,177,93,.08);
}

.efm-faq-group details[open]{
  border-color:rgba(243,223,170,.28) !important;
  background:rgba(255,255,255,.04) !important;
}

.efm-faq-group details[open] summary::after{
  content:"−";
}

.efm-faq-group details > div{
  padding:0 18px 20px !important;
  color:rgba(246,239,224,.72) !important;
  font-size:15px;
  line-height:1.72;
}

.efm-faq-group p{
  margin:0 0 12px;
}

.efm-faq-group p:last-child{
  margin-bottom:0;
}

.efm-faq-group ul{
  margin:0 0 12px 0 !important;
  padding:0 !important;
  list-style:none;
  display:grid;
  gap:10px;
}

.efm-faq-group li{
  position:relative;
  margin:0 !important;
  padding-left:18px;
  color:rgba(246,239,224,.76);
}

.efm-faq-group li::before{
  content:"";
  position:absolute;
  left:0;
  top:.78em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%, #f4e4b7 0%, #d9b665 50%, #9b7127 100%);
  box-shadow:0 0 12px rgba(214,177,93,.34);
  transform:translateY(-50%);
}

.efm-faq-group strong{
  color:#f3dfaa !important;
}

.efm-faq-group a{
  color:#f3dfaa !important;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1024px){
  .efm-faq-page-shell{
    width:min(860px, calc(100% - 28px));
    padding:60px 34px 68px;
  }

  .efm-faq-grid{
    grid-template-columns:1fr;
  }

  .efm-faq-nav{
    position:static;
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:640px){
  .efm-faq-page-shell{
    width:min(100% - 20px, 1120px);
    margin:22px auto 48px;
    padding:42px 18px 50px;
  }

  .efm-faq-kicker{
    gap:8px;
    margin-bottom:14px !important;
    font-size:10px !important;
    letter-spacing:2px !important;
  }

  .efm-faq-kicker::before,
  .efm-faq-kicker::after{
    width:22px;
  }

  .efm-faq-hero{
    margin-bottom:28px !important;
  }

  .efm-faq-hero h1{
    font-size:clamp(34px, 11vw, 52px) !important;
    max-width:100%;
  }

  .efm-faq-hero p{
    font-size:15px !important;
    line-height:1.6 !important;
  }

  .efm-faq-nav{
    grid-template-columns:1fr;
  }

  .efm-faq-group h2{
    font-size:clamp(24px, 8vw, 34px) !important;
  }

  .efm-faq-group summary{
    padding:16px 50px 16px 16px !important;
  }

  .efm-faq-group details > div{
    font-size:14px;
  }
}/* End custom CSS */