.elementor-23204 .elementor-element.elementor-element-33d733e4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-23204 .elementor-element.elementor-element-33d733e4.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-23204 .elementor-element.elementor-element-3198db14{--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-23204 .elementor-element.elementor-element-3198db14.e-con{--flex-grow:0;--flex-shrink:0;}.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-23204 .elementor-element.elementor-element-7b7ff1a3{text-align:center;}.elementor-23204 .elementor-element.elementor-element-7b7ff1a3 .elementor-heading-title{font-family:"Oswald", Sans-serif;font-weight:600;}.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-23204 .elementor-element.elementor-element-7b21b33{text-align:center;font-family:"Montserrat", Sans-serif;font-size:1rem;line-height:1.8em;color:#FFFFFF;}.elementor-23204 .elementor-element.elementor-element-1411d7b{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.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-23204 .elementor-element.elementor-element-15e6852c img{height:300px;}.elementor-23204 .elementor-element.elementor-element-76470b63 img{height:300px;}.elementor-23204 .elementor-element.elementor-element-117bcf5{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-23204 .elementor-element.elementor-element-451bfcd4{--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-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-23204 .elementor-element.elementor-element-2da3e56b .elementor-button-content-wrapper{flex-direction:row;}.elementor-23204 .elementor-element.elementor-element-18483489{--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-23204 .elementor-element.elementor-element-9b68deb{--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-23204 .elementor-element.elementor-element-9b68deb.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-23204 .elementor-element.elementor-element-f34d78c{--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-23204 .elementor-element.elementor-element-5c3fb547{text-align:center;}.elementor-23204 .elementor-element.elementor-element-6207de32{--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-23204 .elementor-element.elementor-element-6b0a638d{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{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-23204 .elementor-element.elementor-element-3c93eef4{--icon-box-icon-margin:15px;}.elementor-23204 .elementor-element.elementor-element-3c93eef4.elementor-view-stacked .elementor-icon{background-color:#4812F1;}.elementor-23204 .elementor-element.elementor-element-3c93eef4.elementor-view-framed .elementor-icon, .elementor-23204 .elementor-element.elementor-element-3c93eef4.elementor-view-default .elementor-icon{fill:#4812F1;color:#4812F1;border-color:#4812F1;}.elementor-23204 .elementor-element.elementor-element-3c93eef4 .elementor-icon-box-title, .elementor-23204 .elementor-element.elementor-element-3c93eef4 .elementor-icon-box-title a{font-family:"Oswald", Sans-serif;font-weight:600;}.elementor-23204 .elementor-element.elementor-element-3c93eef4 .elementor-icon-box-description{font-family:"Montserrat", Sans-serif;font-size:1rem;line-height:1.8em;color:#000000;}.elementor-23204 .elementor-element.elementor-element-51d97ad5{--icon-box-icon-margin:15px;}.elementor-23204 .elementor-element.elementor-element-51d97ad5.elementor-view-stacked .elementor-icon{background-color:#4812F1;}.elementor-23204 .elementor-element.elementor-element-51d97ad5.elementor-view-framed .elementor-icon, .elementor-23204 .elementor-element.elementor-element-51d97ad5.elementor-view-default .elementor-icon{fill:#4812F1;color:#4812F1;border-color:#4812F1;}.elementor-23204 .elementor-element.elementor-element-51d97ad5 .elementor-icon-box-title, .elementor-23204 .elementor-element.elementor-element-51d97ad5 .elementor-icon-box-title a{font-family:"Oswald", Sans-serif;font-weight:600;}.elementor-23204 .elementor-element.elementor-element-51d97ad5 .elementor-icon-box-description{font-family:"Montserrat", Sans-serif;font-size:1rem;line-height:1.8em;color:#000000;}.elementor-23204 .elementor-element.elementor-element-355655e2{--icon-box-icon-margin:15px;}.elementor-23204 .elementor-element.elementor-element-355655e2.elementor-view-stacked .elementor-icon{background-color:#4812F1;}.elementor-23204 .elementor-element.elementor-element-355655e2.elementor-view-framed .elementor-icon, .elementor-23204 .elementor-element.elementor-element-355655e2.elementor-view-default .elementor-icon{fill:#4812F1;color:#4812F1;border-color:#4812F1;}.elementor-23204 .elementor-element.elementor-element-355655e2 .elementor-icon-box-title, .elementor-23204 .elementor-element.elementor-element-355655e2 .elementor-icon-box-title a{font-family:"Oswald", Sans-serif;font-weight:600;}.elementor-23204 .elementor-element.elementor-element-355655e2 .elementor-icon-box-description{font-family:"Montserrat", Sans-serif;font-size:1rem;line-height:1.8em;color:#000000;}.elementor-23204 .elementor-element.elementor-element-7d2e15bc{--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-23204 .elementor-element.elementor-element-4d7052ea .elementor-heading-title{font-family:"Oswald", Sans-serif;font-weight:600;color:#0632A2;}.elementor-23204 .elementor-element.elementor-element-107384f9{font-family:"Montserrat", Sans-serif;font-size:1rem;line-height:1.8em;color:#FFFFFF;}.elementor-23204 .elementor-element.elementor-element-383718b3{--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-23204 .elementor-element.elementor-element-1e4b6c57{--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-23204 .elementor-element.elementor-element-4ea05433{--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;}@media(max-width:1024px){.elementor-23204 .elementor-element.elementor-element-1411d7b{--grid-auto-flow:row;}.elementor-23204 .elementor-element.elementor-element-6b0a638d{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-23204 .elementor-element.elementor-element-33d733e4{--width:333px;}.elementor-23204 .elementor-element.elementor-element-1411d7b{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-23204 .elementor-element.elementor-element-9b68deb{--width:350px;}.elementor-23204 .elementor-element.elementor-element-47989be2{width:100%;max-width:100%;}.elementor-23204 .elementor-element.elementor-element-6b0a638d{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}@media(min-width:768px){.elementor-23204 .elementor-element.elementor-element-3198db14{--width:100%;}.elementor-23204 .elementor-element.elementor-element-451bfcd4{--width:50%;}.elementor-23204 .elementor-element.elementor-element-18483489{--width:50%;}}/* Start custom CSS for heading, class: .elementor-element-7b7ff1a3 *//* Style the entire section */
.custom-header-text {
    background: linear-gradient(to right, #f9f9f9, #ffffff); /* Subtle gradient background */
    padding: 40px;
    text-align: center;
    border-radius: 10px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
    max-width: 90%;
    margin: 0 auto;
}

/* Style the header */
.custom-header-text h2,
.custom-header-text h1 {
    font-size: 32px;
    font-weight: bold;
    color: #0645AD; /* Dark blue */
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
    text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
}

/* Style the paragraph text */
.custom-header-text p {
    font-size: 18px;
    line-height: 1.7;
    color: #444;
    max-width: 800px;
    margin: 0 auto;
}

/* Highlight important words */
.custom-header-text p strong {
    color: #0645AD;
    font-weight: bold;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .custom-header-text {
        padding: 30px;
    }

    .custom-header-text h2,
    .custom-header-text h1 {
        font-size: 26px;
    }

    .custom-header-text p {
        font-size: 16px;
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-7b21b33 */.highlighted-section {
    background: #4b1e82; /* Deep purple to match the theme */
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
    text-align: center;
    font-size: 1.2em;
    color: #ffffff; /* White text for contrast */
    font-weight: bold;
    border-left: 5px solid #ffcc00; /* Gold accent to make it pop */
}

/* Ensuring links appear white */
.highlighted-section a {
    color: #ffffff !important; /* White links */
    text-decoration: underline; /* Keeps them distinguishable */
    font-weight: bold;
    transition: color 0.3s ease-in-out;
}

/* Add hover effect for better interaction */
.highlighted-section a:hover {
    color: #ffcc00 !important; /* Gold accent on hover */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1411d7b *//* === Force Square Images (1:1) for Party Pros City Templates === */

.elementor-element-1411d7b img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;   /* Force square ratio */
  object-fit: cover !important;     /* Crop to fill without distortion */
  display: block;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-47989be2 *//* put this AFTER your :root block so it wins the cascade */
.rental-wizard h1,
.rental-wizard h2,
.rental-wizard h3,
.rental-wizard h4,
.rental-wizard h5,
.rental-wizard h6{
  line-height:1.15;         /* 115 % of the font size ≈ sweet spot        */
  word-break:break-word;    /* prevents long words from pushing sideways  */
}

/* option-al: tighten the giant H1 a bit more on very wide screens */
@media(min-width:1200px){
  .rental-wizard h1{ line-height:1.1; }
}

/* …and loosen things on phones so text doesn’t feel cramped */
@media(max-width:480px){
  .rental-wizard h1{ line-height:1.25; }
}
/* =========================================================
   Desktop: let the wizard go truly full-width ( ≥ 992 px )
   ========================================================= */
@media (min-width: 992px){

  /* remove Elementor’s boxed gutters */
  .elementor-section.elementor-section-boxed > .elementor-container,
  .elementor-column,
  .elementor-column > .elementor-widget-wrap{
    padding: 0 !important;
    margin:  0 !important;
    max-width: none !important;
  }

  /* stretch the wizard edge-to-edge */
  .rental-wizard{
    width: 100vw !important;          /* fill the whole viewport  */
    max-width: none !important;       /* kill the 1000 px cap     */
    position: relative;
    left: calc(-50vw + 50%) !important; /* counter Elementor’s centering */

/* ==== Rental Wizard fixes – scope to the wizard ==== */
.rental-wizard {
  --primary-color:#28a745; --primary-dark:#218838;
  --secondary-color:#007bff; --secondary-dark:#0056b3;
  --background-color:#f8f9fa; --text-color:#333;
  --card-bg:#fff; --card-shadow:0 4px 12px rgba(0,0,0,.15);
  --radius:12px;
  font-family:'Roboto',Arial,sans-serif;
  max-width:1000px;margin:0 auto;padding:30px;
}

/* keep wizard images visible even against Elementor’s img rule */
.rental-wizard .event-card img,
.rental-wizard .item-card  img {
  display:block;
  width:100% !important;
  height:180px !important;       /* force fixed height */
  object-fit:cover !important;
  border-top-left-radius:var(--radius);
  border-top-right-radius:var(--radius);
}

/* quick visual fixes for cards & labels */
.rental-wizard .event-card,
.rental-wizard .category-card,
.rental-wizard .item-card{
  background:var(--card-bg);border:1px solid #ddd;
  border-radius:var(--radius);box-shadow:var(--card-shadow);
  transition:transform .3s,box-shadow .3s;cursor:pointer;
}
.rental-wizard .event-label{
  display:block !important;font-weight:600;
  padding:.75rem;text-align:center;font-size:1rem;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9b68deb *//* Elementor → Site Settings → Custom CSS  (or on the Section that holds Step-8) */
.holdForm::before{
  content:none !important;   /* wipes the gradient frame */
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-51d97ad5 *//* ==== Why-Choose Section – Enhanced Icon Visibility ==== */
:root{
  --ppe-blue:#0047b3;     /* heading & hover text */
  --ppe-purple:#601acc;   /* primary brand accent */
  --ppe-light:#f8f9ff;    /* card background */
}

.why-choose-section{
  display:flex; flex-wrap:wrap; justify-content:space-between;
  gap:2rem; margin-top:2rem;
}

/* icon-box cards */
.why-choose-section .elementor-icon-box{
  flex:1 1 30%; min-width:260px;
  background:var(--ppe-light);
  border-radius:12px; padding:2rem 1.5rem 2.5rem; text-align:center;
  box-shadow:0 4px 12px rgba(0,0,0,.06);
  transition:transform .25s ease, box-shadow .25s ease;
}
.why-choose-section .elementor-icon-box:hover{
  transform:translateY(-6px);
  box-shadow:0 6px 16px rgba(0,0,0,.08);
}

/* ICON styling */
.why-choose-section .elementor-icon{
  display:inline-flex; align-items:center; justify-content:center;
  width:72px; height:72px;
  background:#fff; border-radius:50%; border:3px solid var(--ppe-purple);
  color:var(--ppe-purple);           /* icon color */
  transition:background .25s,color .25s;
}
.why-choose-section .elementor-icon svg{
  width:38px; height:38px;
  fill:currentColor;                /* ensure SVG path uses icon color */
}

.why-choose-section .elementor-icon-box:hover .elementor-icon{
  background:var(--ppe-purple);
  color:#fff;
}

/* titles & descriptions */
.why-choose-section .elementor-icon-box-title{
  font-size:1.15rem; font-weight:700; color:var(--ppe-blue);
  margin:1rem 0 .75rem;
}
.why-choose-section .elementor-icon-box-description{
  font-size:.95rem; line-height:1.55; color:#333; margin:0;
}

/* responsive */
@media(max-width:768px){
  .why-choose-section{gap:1.25rem;}
  .why-choose-section .elementor-icon-box{padding:1.5rem 1rem 2rem;}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6207de32 *//* ▸ Party Pros – Why-Choose “boxed cards”
   -------------------------------------------------------------- */

/* 1. Band / row wrapper */
.why-choose-section{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:2rem;
  padding:60px 25px;
  background:#faf9ff;          /* light backdrop so cards pop */
}

/* 2. Individual card */
.why-choose-section .elementor-icon-box{
  position:relative;
  background:linear-gradient(145deg,#ffffff 0%,#f3f0ff 100%);
  border:2px solid rgba(93,36,255,.12);   /* subtle lavender edge */
  border-radius:18px;
  padding:2.75rem 1.75rem 2.5rem;
  text-align:center;
  box-shadow:0 18px 36px -14px rgba(0,0,0,.16);
  transition:transform .35s cubic-bezier(.22,.68,.56,1.28),
             box-shadow .35s ease;
}

/* lift on hover */
.why-choose-section .elementor-icon-box:hover{
  transform:translateY(-8px);
  box-shadow:0 26px 44px -16px rgba(0,0,0,.22);
}

/* 3. Icon styling */
.why-choose-section .elementor-icon-box-icon .elementor-icon{
  font-size:3.6rem;
  color:#5d24ff;              /* brand purple */
  margin-bottom:1.1rem;
}

/* 4. Headline */
.why-choose-section .elementor-icon-box-title span{
  font-size:1.3rem;
  font-weight:700;
  color:#18123b;
  display:block;
  margin-bottom:.6rem;
  letter-spacing:.01em;
}

/* 5. Description text */
.why-choose-section .elementor-icon-box-description{
  font-size:1rem;
  line-height:1.55;
  color:#4c4c4c;
  max-width:290px;
  margin:0 auto;
}

/* 6. Mobile finetuning */
@media(max-width:480px){
  .why-choose-section{
    padding:50px 15px;
    gap:1.5rem;
  }
  .why-choose-section .elementor-icon-box{
    padding:2.25rem 1.4rem 2rem;
  }
}/* End custom CSS */
/* Start custom CSS *//* keep the popup hidden until a trigger is clicked */
.pp-popup { display:none; }   /* ← remove !important */
/* ░░ Party Pros single-item template – mobile polish ░░
   page = .elementor-13153 (post-ID 17981)                                */
@media (max-width:767px){

  /* 1.  Kill all side-padding / width caps */
  .elementor-13153 .elementor-container,
  .elementor-13153 .e-con,
  .elementor-13153 .e-con-inner,
  .elementor-13153 .e-con-child,
  .elementor-13153 .elementor-column{
    width:100%!important;
    max-width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* 2.  Images: fill width, keep ratio */
  .elementor-13153 img{
    width:100%!important;
    height:auto!important;
    object-fit:cover;
  }

  /* 3.  “Why Choose” section – single-column full-width */
  .elementor-13153 .why-choose-section{
    display:grid!important;
    grid-template-columns:1fr!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .elementor-13153 .why-choose-section .elementor-widget-icon-box{
    max-width:100%!important;
  }

  /* 4.  Buttons row – stack & center */
  .elementor-13153 .custom-button-section{
    grid-template-columns:1fr!important;
    justify-items:center;
    padding-left:0!important;
    padding-right:0!important;
  }
  .elementor-13153 .custom-button-section .custom-buttons{
    max-width:100%!important;
  }

  /* 5.  Event-type grid = 2-up on phones */
  .elementor-13153 .casino-event-types-block .event-type-grid{
    grid-template-columns:repeat(2,1fr)!important;
  }

  /* 6.  Safety: never allow horizontal scroll */
  body{overflow-x:hidden;}
}
/* ░░ end mobile pack ░░ */
/* ░░ Event-type grid — mobile fix (≤767 px) ░░ */
@media (max-width:767px){

  /* 1. Make the purple panel truly full-bleed */
  .casino-event-types-block{
    padding-left:0!important;
    padding-right:0!important;
  }

  /* 2. Two equal tracks that hug the right edge */
  .casino-event-types-block .event-type-grid{
    grid-template-columns:repeat(2,1fr)!important;
    justify-content:flex-end;      /* push grid to the right  */
    column-gap:14px;               /* adjust gap to taste     */
  }

  /* 3. Let each white card fill its track */
  .casino-event-types-block .event-box{
    max-width:100%!important;      /* kill the 240 px limit    */
    width:100%!important;
  }
}/* End custom CSS */