.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-47512 .elementor-element.elementor-element-36d99edb{text-align:left;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-47512 .elementor-element.elementor-element-494918f4{width:var( --container-widget-width, 96.687% );max-width:96.687%;--container-widget-width:96.687%;--container-widget-flex-grow:0;text-align:center;}.elementor-47512 .elementor-element.elementor-element-494918f4 > .elementor-widget-container{margin:0px 0px 0px 38px;}.elementor-47512 .elementor-element.elementor-element-494918f4.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-47512 .elementor-element.elementor-element-72a5eafa{text-align:left;}.elementor-47512 .elementor-element.elementor-element-7c8a1d18{text-align:left;}.elementor-47512 .elementor-element.elementor-element-8aae0{text-align:left;}.elementor-47512 .elementor-element.elementor-element-2378f366{--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;}.elementor-47512 .elementor-element.elementor-element-5522e7bd{text-align:left;}.elementor-47512 .elementor-element.elementor-element-b161372{text-align:left;}.elementor-47512 .elementor-element.elementor-element-60b669aa{text-align:left;}.elementor-47512 .elementor-element.elementor-element-4186abcb{--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;}.elementor-47512 .elementor-element.elementor-element-1d1ad206{text-align:center;}.elementor-47512 .elementor-element.elementor-element-1d1ad206 .elementor-heading-title{font-size:30px;font-weight:800;}.elementor-47512 .elementor-element.elementor-element-223db853{text-align:left;}.elementor-47512 .elementor-element.elementor-element-223db853 .elementor-heading-title{color:#FFFFFF;}.elementor-47512 .elementor-element.elementor-element-4649eadd{text-align:left;}.elementor-47512 .elementor-element.elementor-element-4649eadd .elementor-heading-title{font-weight:600;color:#FFFFFF;}.elementor-47512 .elementor-element.elementor-element-72c051d0{text-align:left;}.elementor-47512 .elementor-element.elementor-element-72c051d0 .elementor-heading-title{color:#FFFFFF;}.elementor-47512 .elementor-element.elementor-element-345eed45{text-align:left;}.elementor-47512 .elementor-element.elementor-element-345eed45 .elementor-heading-title{color:#FFFFFF;}.elementor-47512 .elementor-element.elementor-element-57632645{text-align:left;}.elementor-47512 .elementor-element.elementor-element-50638158{text-align:left;}.elementor-47512 .elementor-element.elementor-element-15bb6e1a{text-align:left;}.elementor-47512 .elementor-element.elementor-element-469ad724{text-align:left;}.elementor-47512 .elementor-element.elementor-element-1b78e0df{--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;}.elementor-47512 .elementor-element.elementor-element-4d9cab2e{text-align:center;}.elementor-47512 .elementor-element.elementor-element-4d9cab2e .elementor-heading-title{font-weight:800;color:#30184F;}.elementor-47512 .elementor-element.elementor-element-6aa8c96e{text-align:center;}.elementor-47512 .elementor-element.elementor-element-6aa8c96e .elementor-heading-title{font-weight:800;color:#30184F;}.elementor-widget-toggle .elementor-toggle-title, .elementor-widget-toggle .elementor-toggle-icon{color:var( --e-global-color-primary );}.elementor-widget-toggle .elementor-toggle-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-toggle .elementor-tab-title.elementor-active a, .elementor-widget-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon{color:var( --e-global-color-accent );}.elementor-widget-toggle .elementor-toggle-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-toggle .elementor-tab-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-47512 .elementor-element.elementor-element-7b9207a0{text-align:center;}.elementor-47512 .elementor-element.elementor-element-7b9207a0 .elementor-heading-title{color:#200D37;}/* Start custom CSS for section, class: .elementor-element-3cbe0db1 *//* HERO */
.elementor-47512 .elementor-element.elementor-element-3cbe0db1{position:relative;isolation:isolate;padding:80px 24px;min-height:62vh;display:grid;align-content:center;background:linear-gradient(135deg, rgba(0,0,0,.45), rgba(0,0,0,.2));}
.elementor-47512 .elementor-element.elementor-element-3cbe0db1 .elementor-widget-image{position:absolute;inset:0;z-index:-1;filter:brightness(.6) saturate(1.1);opacity:.85}
.elementor-47512 .elementor-element.elementor-element-3cbe0db1 .elementor-widget-heading .elementor-heading-title{font-weight:800;letter-spacing:.2px;line-height:1.05}
.elementor-47512 .elementor-element.elementor-element-3cbe0db1 .elementor-widget-button .elementor-button{backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3)}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-4f33bf52 *//* BENEFITS */
.elementor-47512 .elementor-element.elementor-element-4f33bf52{padding:48px 24px}
.elementor-47512 .elementor-element.elementor-element-4f33bf52 .elementor-widget-heading .elementor-heading-title{font-weight:700}
.elementor-47512 .elementor-element.elementor-element-4f33bf52 .elementor-widget-text-editor{background:linear-gradient(180deg, rgba(255,255,255,.9), rgba(255,255,255,.75));border:1px solid rgba(0,0,0,.06);padding:20px;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.06)}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-11d165c2 *//* PACKAGES */
.elementor-47512 .elementor-element.elementor-element-11d165c2{padding:56px 24px;background:linear-gradient(180deg,#f7fafc, #ffffff)}
.elementor-47512 .elementor-element.elementor-element-11d165c2 .elementor-widget-image img{border-radius:16px;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.elementor-47512 .elementor-element.elementor-element-11d165c2 .elementor-widget-text-editor:nth-of-type(2){font-weight:500}
.elementor-47512 .elementor-element.elementor-element-11d165c2 .elementor-widget-text-editor:last-of-type p{display:flex;flex-wrap:wrap;gap:8px;white-space:pre-wrap}
.elementor-47512 .elementor-element.elementor-element-11d165c2 .elementor-widget-text-editor:last-of-type p:before{content:"Includes:";font-weight:700;margin-right:8px}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-7e8ec295 *//* STEPS */
.elementor-47512 .elementor-element.elementor-element-7e8ec295{padding:56px 24px;background:linear-gradient(180deg,#ffffff, #f6f9ff)}
.elementor-47512 .elementor-element.elementor-element-7e8ec295 .elementor-widget-heading .elementor-heading-title{font-weight:700}
.elementor-47512 .elementor-element.elementor-element-7e8ec295 .elementor-widget-text-editor{border-left:3px solid rgba(20,110,240,.2);padding-left:14px}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-65116b64 *//* INCLUDED & REQUIREMENTS */
.elementor-47512 .elementor-element.elementor-element-65116b64{padding:56px 24px}
.elementor-47512 .elementor-element.elementor-element-65116b64 .elementor-widget-text-editor p{white-space:pre-wrap}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-46842a93 *//* SAFETY */
.elementor-47512 .elementor-element.elementor-element-46842a93{padding:48px 24px;background:linear-gradient(135deg,#e8fff5,#ffffff)}
.elementor-47512 .elementor-element.elementor-element-46842a93 .elementor-widget-text-editor{max-width:900px}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-baadead *//* AUDIENCES */
.elementor-47512 .elementor-element.elementor-element-baadead{padding:48px 24px}
.elementor-47512 .elementor-element.elementor-element-baadead .elementor-widget-text-editor:last-of-type p{display:flex;flex-wrap:wrap;gap:10px;white-space:pre-wrap}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-72146308 *//* GALLERY */
.elementor-47512 .elementor-element.elementor-element-72146308{padding:48px 24px}
.elementor-47512 .elementor-element.elementor-element-72146308 img{border-radius:14px;object-fit:cover;width:100%;aspect-ratio:4/3;box-shadow:0 10px 24px rgba(0,0,0,.08)}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-33a570e4 *//* FAQS */
.elementor-47512 .elementor-element.elementor-element-33a570e4{padding:56px 24px;background:linear-gradient(180deg,#ffffff,#fbfcff)}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-6590dcf */:root{
  --pp-accent:#1054ff;
  --pp-ink:#0b1220;
  --pp-ink-2:#314056;
  --pp-bg:#f6f9ff;
  --pp-card:#ffffff;
}
.elementor-47512 .elementor-element.elementor-element-6590dcf{padding:64px 24px;background:
  radial-gradient(1200px 600px at 50% 0%, rgba(16,84,255,.08), transparent 60%),
  linear-gradient(180deg, #ffffff, #f7faff);}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__wrap{max-width:1200px;margin-inline:auto}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__head{text-align:center;margin-bottom:28px}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__head h2{font-size:clamp(28px,4vw,44px);font-weight:850;letter-spacing:.2px;color:var(--pp-ink);margin:0}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__head h2 span{color:var(--pp-accent);text-decoration:underline;text-underline-offset:7px}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__sub{max-width:880px;margin:10px auto 0;color:var(--pp-ink-2);font-size:clamp(14px,1.6vw,16px)}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__sub a{color:var(--pp-accent);font-weight:600}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__grid{
  list-style:none;margin:36px auto 0;padding:0;
  display:grid;gap:18px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (min-width:768px){
  .elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__card{background:var(--pp-card);border-radius:16px;overflow:hidden;box-shadow:0 12px 34px rgba(16,84,255,.07);
  transition:transform .22s ease, box-shadow .22s ease;}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(16,84,255,.14)}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__figure{display:grid}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__figure img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__label{
  display:block;padding:12px 14px;font-weight:700;color:var(--pp-ink);
  background:linear-gradient(180deg,#ffffff,#f6f9ff);border-top:1px solid rgba(0,0,0,.06);
}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__link{display:block;text-decoration:none}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__foot{margin-top:26px;text-align:center;color:var(--pp-ink-2)}
.elementor-47512 .elementor-element.elementor-element-6590dcf .pp-distance__foot a{color:var(--pp-accent);font-weight:700}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-5d2218fa *//* CTA */
.elementor-47512 .elementor-element.elementor-element-5d2218fa{padding:64px 24px;text-align:center;background:radial-gradient(1200px 600px at 50% 0%, rgba(16,84,255,.08), transparent 60%)}
.elementor-47512 .elementor-element.elementor-element-5d2218fa .elementor-widget-button .elementor-button{padding:16px 28px;font-weight:700;border-radius:999px;box-shadow:0 8px 24px rgba(16,84,255,.25)}/* End custom CSS */
/* Start custom CSS *//* =========================================================
   PARTY PROS — Elementor Post ID #47512 (Axe Throwing Rental)
   Page-scoped, ID-free body.elementor-page-47512s, mobile-first
   ========================================================= */

/* ---- Design Tokens ---- */
.postid-47512,
.elementor-page-47512,
.elementor-47512 {
  --pp-primary: #573288;        /* Brand purple */
  --pp-accent: #0ea5e9;         /* Bright CTA */
  --pp-card: #0f172a;           /* Navy card */
  --pp-card-2: #111827;         /* Darker navy */
  --pp-on-dark: #f3f7fc;        /* Text on dark */
  --pp-on-dark-2: #cfe0ef;      /* Muted on dark */
  --pp-on-light: #0b1a29;       /* Text on light */
  --pp-border: rgba(255,255,255,.12);
  --pp-shadow: 0 14px 36px rgba(2,8,23,.5);
  --pp-radius: 16px;
  --pp-transition: all .3s ease;
}

/* ---- Base Typography & Layout ---- */
.elementor-47512 {
  font-family: "Kanit", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: linear-gradient(180deg, #f7fafc 0%, #e5e7eb 100%);
}
.elementor-47512 .elementor-section { scroll-margin-top: 80px; padding: 40px 20px; }

/* =========================================================
   HERO — Immersive & Bold
   ========================================================= */
.elementor-47512 .pp-laser-hero {
  position: relative; isolation: isolate;
  background: linear-gradient(135deg, var(--pp-primary) 0%, var(--pp-card) 100%);
  padding: 60px 20px;
}
.elementor-47512 .pp-laser-hero::before{
  content:""; position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(120% 80% at 50% 10%, rgba(6,12,20,.35) 0%, rgba(6,12,20,.55) 50%, rgba(6,12,20,.75) 100%),
    linear-gradient(180deg, rgba(6,12,20,.12) 0%, rgba(6,12,20,.62) 100%);
  opacity:.92; /* stronger for readability */
}
.elementor-47512 .pp-laser-hero > .elementor-container { position:relative; z-index:1; max-width:1200px; }
.elementor-47512 .pp-laser-hero img {
  width:100%; height:auto; border-radius:var(--pp-radius);
  box-shadow:var(--pp-shadow); transition:var(--pp-transition);
}
.elementor-47512 .pp-laser-hero img:hover { transform:scale(1.02); }

.elementor-47512 .pp-laser-hero .elementor-heading-title{
  color:#fff !important; -webkit-text-fill-color:#fff !important;
  font-size:clamp(36px,5vw,56px) !important; font-weight:900;
  text-shadow:0 3px 20px rgba(0,0,0,.5); margin-bottom:20px;
}
.elementor-47512 .pp-laser-hero .elementor-widget-text-editor,
.elementor-47512 .pp-laser-hero .elementor-widget-text-editor p{
  color:var(--pp-on-dark) !important; -webkit-text-fill-color:var(--pp-on-dark) !important;
  font-size:clamp(18px,2.5vw,22px); line-height:1.7;
  text-shadow:0 1px 10px rgba(0,0,0,.3);
}
.elementor-47512 .pp-laser-hero .elementor-button{
  background:var(--pp-accent); color:#fff; border-radius:999px;
  padding:1.2rem 2rem; font-weight:700;
  box-shadow:0 12px 24px rgba(14,165,233,.4); transition:var(--pp-transition);
}
.elementor-47512 .pp-laser-hero .elementor-button:hover{
  transform:translateY(-2px); background:#0284c7; box-shadow:0 16px 32px rgba(14,165,233,.5);
}

/* =========================================================
   CARDS — Benefits, Packages, Steps, Included/Req, Safety, Audiences
   ========================================================= */
.elementor-47512 .pp-laser-benefits .elementor-column .elementor-widget-wrap,
.elementor-47512 .pp-laser-packages .elementor-column .elementor-widget-wrap,
.elementor-47512 .pp-laser-steps .elementor-column .elementor-widget-wrap,
.elementor-47512 .pp-laser-included-req .elementor-column .elementor-widget-wrap,
.elementor-47512 .pp-laser-safety .elementor-column .elementor-widget-wrap,
.elementor-47512 .pp-laser-audiences .elementor-column .elementor-widget-wrap{
  background:var(--pp-card) !important; border:1px solid var(--pp-border) !important;
  border-radius:var(--pp-radius); box-shadow:var(--pp-shadow);
  padding:28px; transition:var(--pp-transition);
}
.elementor-47512 .pp-laser-benefits .elementor-column .elementor-widget-wrap:hover,
.elementor-47512 .pp-laser-packages .elementor-column .elementor-widget-wrap:hover,
.elementor-47512 .pp-laser-steps .elementor-column .elementor-widget-wrap:hover{
  transform:translateY(-4px); box-shadow:0 18px 42px rgba(2,8,23,.55);
}
.elementor-47512 .pp-laser-benefits .elementor-widget-text-editor,
.elementor-47512 .pp-laser-packages .elementor-widget-text-editor,
.elementor-47512 .pp-laser-steps .elementor-widget-text-editor,
.elementor-47512 .pp-laser-included-req .elementor-widget-text-editor,
.elementor-47512 .pp-laser-safety .elementor-widget-text-editor,
.elementor-47512 .pp-laser-audiences .elementor-widget-text-editor{
  background:transparent !important; border:0 !important; box-shadow:none !important;
  color:var(--pp-on-dark) !important; -webkit-text-fill-color:var(--pp-on-dark) !important;
  line-height:1.65; font-size:16px;
}
.elementor-47512 .pp-laser-benefits h3,
.elementor-47512 .pp-laser-packages h3,
.elementor-47512 .pp-laser-included-req h3,
.elementor-47512 .pp-laser-safety h3,
.elementor-47512 .pp-laser-audiences h3{
  color:#fff !important; font-size:clamp(22px,3vw,28px) !important;
  font-weight:800; text-shadow:0 2px 12px rgba(0,0,0,.35); margin-bottom:16px;
}
.elementor-47512 .pp-laser-packages .elementor-widget-image img{
  border-radius:calc(var(--pp-radius) - 4px);
  box-shadow:0 12px 28px rgba(0,0,0,.3); margin-bottom:16px; transition:var(--pp-transition);
}
.elementor-47512 .pp-laser-packages .elementor-widget-image img:hover{ transform:scale(1.03); }

/* =========================================================
   STEPS — Numbered Bubbles
   ========================================================= */
.elementor-47512 .pp-laser-steps .elementor-container{ counter-reset:ppstep; }
.elementor-47512 .pp-laser-steps .elementor-top-column{ position:relative; padding-top:20px; }
.elementor-47512 .pp-laser-steps .elementor-top-column::before{
  counter-increment:ppstep; content:counter(ppstep);
  position:absolute; top:-16px; left:20px; width:48px; height:48px; border-radius:999px;
  background:var(--pp-accent); color:#fff; display:grid; place-items:center;
  font-weight:900; font-size:20px; box-shadow:0 10px 22px rgba(14,165,233,.4), 0 0 0 6px #fff; z-index:3;
}
.elementor-47512 .pp-laser-steps h4.elementor-heading-title{ font-size:clamp(20px,3vw,26px) !important; line-height:1.3; }
.elementor-47512 .pp-laser-steps .elementor-widget-text-editor p{ margin:0; }

/* =========================================================
   INCLUDED / REQUIREMENTS — Chip-Style Text
   ========================================================= */
.elementor-47512 .pp-laser-included-req .elementor-widget-text-editor p{ display:flex; flex-wrap:wrap; gap:8px; }
.elementor-47512 .pp-laser-included-req .elementor-widget-text-editor p::first-line{ font-weight:600; }
.elementor-47512 .pp-laser-included-req .elementor-widget-text-editor p span{
  background:var(--pp-card-2); padding:6px 12px; border-radius:8px; font-size:14px;
}

/* =========================================================
   DISTANCE GRID — Polished Cards
   ========================================================= */
.elementor-47512 .pp-distance{
  margin-top:20px; padding:30px 20px; background:#fff;
  border-radius:var(--pp-radius); box-shadow:var(--pp-shadow);
}
.elementor-47512 .pp-distance__head h3{
  font-size:clamp(24px,4vw,36px); font-weight:900; color:var(--pp-on-light); text-align:center;
}
.elementor-47512 .pp-distance__head h3 span{ color:var(--pp-primary); }
.elementor-47512 .pp-distance__sub{
  color:#374151; font-size:16px; text-align:center; max-width:900px; margin:0 auto 24px;
}
.elementor-47512 .pp-distance__grid{
  display:grid; gap:20px; grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  list-style:none; padding:0;
}
.elementor-47512 .pp-distance__figure{
  background:#fff; border-radius:var(--pp-radius); overflow:hidden;
  box-shadow:0 12px 30px rgba(2,8,23,.2); transition:var(--pp-transition);
}
.elementor-47512 .pp-distance__figure:hover{ transform:translateY(-4px); box-shadow:0 16px 36px rgba(2,8,23,.3); }
.elementor-47512 .pp-distance__figure img{ aspect-ratio:4/3; object-fit:cover; }
.elementor-47512 .pp-distance__label{
  padding:12px 16px; font-weight:800; font-size:16px;
  color:#000 !important; -webkit-text-fill-color:#000 !important; background:#f7fafc;
}

/* =========================================================
   CTA BAND — Bold & Centered (with subtle glass panel)
   ========================================================= */
.elementor-47512 .pp-laser-cta{
  position:relative; isolation:isolate;
  background:linear-gradient(135deg, var(--pp-primary) 0%, var(--pp-accent) 100%);
  padding:60px 20px; border-radius:var(--pp-radius);
}
.elementor-47512 .pp-laser-cta > .elementor-container{
  position:relative; z-index:1; max-width:1100px; margin:0 auto;
}
.elementor-47512 .pp-laser-cta > .elementor-container::before{
  content:""; position:absolute; inset:clamp(8px,2vw,16px);
  background:rgba(255,255,255,.86); border-radius:16px;
  box-shadow:0 12px 28px rgba(0,0,0,.12); backdrop-filter:blur(2px); z-index:-1;
}
.elementor-47512 .pp-laser-cta .elementor-heading-title{
  color:#0b1a29 !important; -webkit-text-fill-color:#0b1a29 !important;
  text-shadow:none !important; font-size:clamp(32px,4.5vw,48px) !important; font-weight:900;
}
.elementor-47512 .pp-laser-cta .elementor-widget-text-editor,
.elementor-47512 .pp-laser-cta .elementor-widget-text-editor p{
  color:#0b1a29 !important; -webkit-text-fill-color:#0b1a29 !important;
  font-size:clamp(16px,2vw,18px); line-height:1.7;
}
.elementor-47512 .pp-laser-cta .elementor-button{
  background:#fff; color:var(--pp-primary); border-radius:999px; padding:1.3rem 2.2rem; font-weight:700;
  box-shadow:0 12px 24px rgba(0,0,0,.3); transition:var(--pp-transition);
}
.elementor-47512 .pp-laser-cta .elementor-button:hover{ background:var(--pp-accent); color:#fff; transform:translateY(-3px); }

/* =========================================================
   FAQ — Modern Toggle Styling
   ========================================================= */
.elementor-47512 .pp-laser-faqs .elementor-toggle .elementor-tab-title{
  background:#fff; border:1px solid rgba(6,19,31,.1); border-radius:12px; padding:14px 18px; margin-bottom:12px;
  font-weight:700; color:var(--pp-on-light); box-shadow:0 6px 16px rgba(0,0,0,.08); transition:var(--pp-transition);
}
.elementor-47512 .pp-laser-faqs .elementor-toggle .elementor-tab-title:hover{ background:var(--pp-primary); color:#fff; }
.elementor-47512 .pp-laser-faqs .elementor-toggle .elementor-tab-content{
  background:#f7fafc; border:1px solid rgba(6,19,31,.08); border-radius:12px; padding:16px; margin:-4px 0 14px;
  color:var(--pp-on-light);
}
.elementor-47512 .pp-laser-faqs .elementor-toggle .elementor-toggle-icon svg{ fill:var(--pp-primary); }

/* =========================================================
   MOBILE — Polished & Responsive
   ========================================================= */
@media (max-width:1024px){
  .elementor-47512 .elementor-heading-title{ font-size:clamp(28px,4.8vw,44px) !important; }
  .elementor-47512 .elementor-widget-text-editor{ font-size:clamp(15px,2vw,17px); }
  .elementor-47512 .pp-laser-hero,
  .elementor-47512 .pp-laser-cta{ padding:40px 15px; }
}
@media (max-width:767px){
  .elementor-47512 .pp-laser-hero .elementor-heading-title{ font-size:clamp(24px,6vw,32px) !important; line-height:1.2; }
  .elementor-47512 .pp-laser-hero .elementor-widget-text-editor{ font-size:15px; }
  .elementor-47512 .pp-laser-benefits .elementor-column .elementor-widget-wrap,
  .elementor-47512 .pp-laser-packages .elementor-column .elementor-widget-wrap,
  .elementor-47512 .pp-laser-steps .elementor-column .elementor-widget-wrap,
  .elementor-47512 .pp-laser-included-req .elementor-column .elementor-widget-wrap{ padding:20px; }
  .elementor-47512 .pp-distance__grid{ grid-template-columns:repeat(2,1fr); }
  .elementor-47512 .pp-laser-steps .elementor-top-column{ margin:16px 0; padding-top:0; }
  .elementor-47512 .pp-laser-steps .elementor-column .elementor-widget-wrap{ padding:20px 20px 20px 60px !important; }
  .elementor-47512 .pp-laser-steps .elementor-top-column::before{
    top:12px; left:12px; width:36px; height:36px; font-size:16px; box-shadow:0 6px 14px rgba(14,165,233,.3), 0 0 0 4px #fff;
  }
  .elementor-47512 .pp-laser-cta > .elementor-container::before{ inset:12px; }
}
@media (max-width:520px){
  .elementor-47512 .pp-distance__grid{ grid-template-columns:1fr; }
  .elementor-47512 .pp-laser-hero .elementor-heading-title{ font-size:clamp(22px,6vw,28px) !important; }
}

/* =========================================================
   MOBILE STICKY CALL BUTTON (requires .topNum tel: link)
   ========================================================= */
@media (max-width:767px){
  .postid-47512 .topNum a[href^="tel:"],
  .elementor-page-47512 .topNum a[href^="tel:"],
  .elementor-47512 .topNum a[href^="tel:"]{
    position:fixed; left:16px; bottom:calc(env(safe-area-inset-bottom,0px) + 20px);
    z-index:2147483647; display:inline-flex; align-items:center; gap:10px;
    padding:12px 18px; border-radius:999px; background:var(--pp-accent);
    color:#fff !important; -webkit-text-fill-color:#fff !important; text-decoration:none !important;
    font:700 16px/1 "Kanit", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    box-shadow:0 12px 24px rgba(14,165,233,.4); transition:var(--pp-transition);
  }
  .elementor-47512 .topNum a[href^="tel:"] i{ display:none !important; }
  .elementor-47512 .topNum a[href^="tel:"]{ font-size:0 !important; }
  .elementor-47512 .topNum a[href^="tel:"]::before{ content:"Call 844-PARTY-HQ"; font-size:16px; letter-spacing:.3px; }
  .postid-47512 .topNum{ height:0; }
}

/* =========================================================
   DISTANCE CAPTIONS — Always Black
   ========================================================= */
.elementor-47512 .pp-distance__link:hover .pp-distance__label,
.elementor-47512 .pp-distance__link:focus .pp-distance__label,
.elementor-47512 .pp-distance__link:active .pp-distance__label{
  color:#000 !important; -webkit-text-fill-color:#000 !important; text-shadow:none !important;
}/* End custom CSS */