.elementor-380 .elementor-element.elementor-element-db987e7{--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-380 .elementor-element.elementor-element-4e4bba2{--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-380 .elementor-element.elementor-element-d61b19d{--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-380 .elementor-element.elementor-element-b43b85c{--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-380 .elementor-element.elementor-element-07c97ae{--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-380 .elementor-element.elementor-element-b8b9b9f{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-380 .elementor-element.elementor-element-4e4bba2{--content-width:1600px;}.elementor-380 .elementor-element.elementor-element-d61b19d{--content-width:1600px;}.elementor-380 .elementor-element.elementor-element-b43b85c{--content-width:1600px;}.elementor-380 .elementor-element.elementor-element-07c97ae{--content-width:1600px;}.elementor-380 .elementor-element.elementor-element-b8b9b9f{--content-width:1800px;}}/* Start custom CSS for html, class: .elementor-element-d48d9f5 *//* ===== NUMBERED HERO LIST ===== */
.pc-condHeroCard__nums{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:14px;
}

.pc-numRow{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,0.10);
  font-size:14px;
  color: rgba(255,255,255,0.86);
}

.pc-numRow:last-child{
  border-bottom:none;
  padding-bottom:0;
}

.pc-numRow span{
  width:26px;
  height:26px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  background: rgba(255,255,255,0.85);
  color:#111;
  flex:0 0 auto;
}
/* ===== FIX: PINK TEXT + MISSING BUTTON STYLES (CONDITIONS HERO) ===== */
.pc-condHeroX,
.pc-condHeroX *{
  color: inherit;
}

.pc-condHeroX{
  color: #fff !important;                 /* force hero text white */
}

.pc-condHeroX a,
.pc-condHeroX a:visited,
.pc-condHeroX a:hover,
.pc-condHeroX a:active{
  color: inherit !important;              /* stop theme pink links */
  text-decoration: none !important;
}

/* Rebuild pc-btn2 styles (in case they don't exist on this page) */
.pc-condHeroX .pc-btn2{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 20px !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  border: 1px solid transparent !important;
  transition: transform .15s ease, filter .15s ease, background .15s ease, border-color .15s ease !important;
}

.pc-condHeroX .pc-btn2:hover{
  transform: translateY(-1px) !important;
}

/* Primary */
.pc-condHeroX .pc-btn2--primary{
  background: linear-gradient(180deg, #ff2a2a, #c50b0b) !important;
  color: #fff !important;
  box-shadow: 0 18px 40px rgba(211,16,16,0.25) !important;
}
.pc-condHeroX .pc-btn2--primary:hover{
  background: linear-gradient(180deg, #ff4b4b, #b80000) !important;
  color: #fff !important;
}

/* Ghost */
.pc-condHeroX .pc-btn2--ghost{
  background: rgba(0,0,0,0.20) !important;
  color: rgba(255,255,255,0.92) !important;
  border-color: rgba(255,255,255,0.18) !important;
}
.pc-condHeroX .pc-btn2--ghost:hover{
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(255,255,255,0.35) !important;
  color: #fff !important;
}

/* Mobile buttons full width like before */
@media (max-width: 767px){
  .pc-condHeroX__cta .pc-btn2{
    width: 100% !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8229a66 */.pc-testGrid{
  padding:90px 0;
  background:#ffffff;
}

.pc-testGrid-inner{
  width:min(1200px,92vw);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:26px;
}

.pc-testCard{
  border:2px solid #e2e2e2;
  border-radius:12px;
  padding:34px 26px;
  background:#ffffff;
}

.pc-testBadge{
  background:#c40000;
  color:#ffffff;
  font-size:11px;
  font-weight:800;
  padding:6px 12px;
  border-radius:6px;
  display:inline-block;
  margin-bottom:14px;
}

.pc-testCard p{
  font-size:15px;
  line-height:1.7;
  color:#333;
  margin-bottom:18px;
}

.pc-testMeta{
  font-size:13px;
  color:#777;
}

@media(max-width:980px){
  .pc-testGrid-inner{ grid-template-columns:repeat(2,1fr); }
}

@media(max-width:600px){
  .pc-testGrid-inner{ grid-template-columns:1fr; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-881196e *//* ===== TESTIMONIAL SLIDER – FINAL BRAND COLORS ===== */
.pc-tSlider{
  background:#ffffff !important;
  border-radius:28px !important;
}

.pc-tSlider::before{ display:none !important; }

.pc-tSlider__shell{
  background:#ffffff !important;
  border:1px solid #e2e6eb !important;
  box-shadow:0 22px 48px rgba(0,0,0,.08) !important;
}

/* header */
.pc-tSlider__kicker,
.pc-tSlider__title,
.pc-tSlider__sub{
  color:#111111 !important;
}

/* arrows */
.pc-tSlider__nav{
  background:#c40000 !important;
  color:#ffffff !important;
  border:none !important;
}
.pc-tSlider__nav:hover{
  background:#a80000 !important;
}

/* cards */
.pc-tCard{
  background:#ffffff !important;
  border:1px solid #e6e6e6 !important;
}
.pc-tQuote{ color:#333333 !important; }
.pc-tName{ color:#111111 !important; }
.pc-tLoc{ color:#777777 !important; }

.pc-tBadge{
  background:#c40000 !important;
  color:#ffffff !important;
  border:none !important;
}

/* avatar */
.pc-tAvatar{
  background:#c40000 !important;
  color:#ffffff !important;
}

/* dots */
.pc-tDot{ background:#d8d8d8 !important; }
.pc-tDot.is-active{ background:#c40000 !important; }

/* footer */
.pc-tFine{ color:#777777 !important; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2b5d6bc */.pc-faqHero{
  padding: 40px 0 70px;
  background: transparent;
}

.pc-faqHero__wrap{
  width: min(1500px, 94vw);
  margin: 0 auto;
  border-radius: 42px;
  overflow: hidden;
  background:
    radial-gradient(900px 600px at 22% 20%, rgba(255,235,235,.75), rgba(255,255,255,0) 55%),
    radial-gradient(900px 600px at 80% 85%, rgba(217,238,255,.92), rgba(255,255,255,0) 58%),
    #f6f6f6;
  border: 1px solid rgba(0,0,0,.06);
}

.pc-faqHero__inner{
  width: min(1300px, calc(100% - 90px));
  margin: 0 auto;
  padding: 70px 0;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 70px;
  align-items: center;
}

/* LEFT */
.pc-faqHero__kicker{
  letter-spacing: .25em;
  font-size: 12px;
  font-weight: 800;
  color: #111;
  opacity: .8;
  margin-bottom: 16px;
}

.pc-faqHero__title{
  margin: 0 0 18px 0;
  font-size: 56px;
  line-height: 1.05;
  font-weight: 500;
  color: #111;
  font-family: Georgia, "Times New Roman", serif; /* screenshot vibe */
}

.pc-faqHero__text{
  font-size: 15.5px;
  line-height: 1.75;
  color: rgba(17,17,17,.72);
  max-width: 560px;
  margin: 0 0 28px 0;
}

/* meta row */
.pc-faqHero__meta{
  display: flex;
  gap: 34px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 28px;
}

.pc-faqHero__rating{
  display: flex;
  gap: 14px;
  align-items: center;
}
.pc-faqHero__stars{
  letter-spacing: 2px;
  font-size: 14px;
  color: #111;
  opacity: .8;
}
.pc-faqHero__score{
  display:flex;
  align-items: baseline;
  gap: 10px;
}
.pc-faqHero__scoreNum{
  font-size: 34px;
  font-weight: 500;
  color: #111;
  font-family: Georgia, "Times New Roman", serif;
}
.pc-faqHero__scoreTxt{
  font-size: 13px;
  color: rgba(17,17,17,.62);
}

/* team */
.pc-faqHero__teamTitle{
  font-size: 13px;
  color: rgba(17,17,17,.65);
  margin-bottom: 10px;
}
.pc-faqHero__avatars{
  display:flex;
  align-items:center;
}
.pc-faqHero__avatars span{
  width: 30px;
  height: 30px;
  border-radius: 999px;
  border: 2px solid #fff;
  margin-left: -10px;
  background: #ddd;
  box-shadow: 0 8px 18px rgba(0,0,0,.08);
}
.pc-faqHero__avatars span:nth-child(1){ margin-left: 0; background:#cfcfcf; }
.pc-faqHero__avatars span:nth-child(2){ background:#bfbfbf; }
.pc-faqHero__avatars span:nth-child(3){ background:#d7d7d7; }
.pc-faqHero__avatars span:nth-child(4){ background:#c6c6c6; }
.pc-faqHero__avatars span:nth-child(5){ background:#e0e0e0; }

/* CTA */
.pc-faqHero__btn{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 22px;
  border-radius: 999px;
  background: #c40000;
  color: #fff;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 18px 40px rgba(196,0,0,.18);
}
.pc-faqHero__btn:hover{
  background:#a80000;
  color:#fff;
}

/* RIGHT image */
.pc-faqHero__imgWrap{
  width: min(560px, 100%);
  margin-left: auto;
  border-radius: 34px;
  overflow: hidden;
  box-shadow: 0 35px 70px rgba(0,0,0,.12);
}
.pc-faqHero__imgWrap img{
  width: 100%;
  height: 520px;
  object-fit: cover;
  display: block;
}

/* responsive */
@media(max-width:1024px){
  .pc-faqHero__inner{
    grid-template-columns: 1fr;
    gap: 34px;
    padding: 54px 0;
  }
  .pc-faqHero__imgWrap{
    margin: 0;
    width: 100%;
  }
  .pc-faqHero__imgWrap img{ height: 420px; }
}

@media(max-width:768px){
  .pc-faqHero__inner{
    width: min(1300px, calc(100% - 32px));
    padding: 44px 0;
  }
  .pc-faqHero__wrap{ border-radius: 26px; }
  .pc-faqHero__title{ font-size: 34px; }
  .pc-faqHero__btn{ width: 100%; justify-content: center; }
  .pc-faqHero__imgWrap{ border-radius: 22px; }
  .pc-faqHero__imgWrap img{ height: 320px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3042fc1 */.pc-faqClean{
  padding:120px 0;
  background:#fbf6f1;
}

.pc-faqClean-inner{
  width:min(1300px,92vw);
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:80px;
}

/* LEFT */
.pc-faqClean-kicker{
  letter-spacing:.25em;
  font-size:12px;
  font-weight:800;
  color:#c40000;
  margin-bottom:12px;
}
.pc-faqClean-title{
  font-size:48px;
  line-height:1.1;
  color:#111;
  margin-bottom:36px;
}

.pc-faqClean-card{
  background:#ffffff;
  border-radius:22px;
  padding:28px;
  border:1px solid #e6e6e6;
}
.pc-faqClean-cardTop{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:800;
  color:#111;
}
.pc-faqClean-ico{
  width:36px;
  height:36px;
  border-radius:12px;
  background:#c40000;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
}
.pc-faqClean-divider{
  height:1px;
  background:#eee;
  margin:18px 0;
}
.pc-faqClean-contact{
  display:flex;
  flex-direction:column;
  gap:10px;
  color:#555;
  font-size:14px;
}

/* RIGHT */
.pc-faqClean-item{
  background:#ffffff;
  border-radius:16px;
  margin-bottom:14px;
  overflow:hidden;
  border:1px solid #e5e5e5;
}
.pc-faqClean-btn{
  width:100%;
  padding:20px 24px;
  border:none;
  background:transparent;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-weight:700;
  font-size:16px;
  cursor:pointer;
  color:#111;
}
.pc-faqClean-btn:hover{
  background:#c40000;
  color:#fff;
}
.pc-faqClean-content{
  padding:0 24px;
  max-height:0;
  overflow:hidden;
  font-size:15px;
  line-height:1.6;
  transition:.3s ease;
  color:#444;
}
.pc-faqClean-item.open .pc-faqClean-content{
  padding:18px 24px 22px;
  max-height:200px;
  background:#f3f3f3;
}

/* responsive */
@media(max-width:1024px){
  .pc-faqClean-inner{ grid-template-columns:1fr; gap:40px; }
}
@media(max-width:768px){
  .pc-faqClean{ padding:70px 0; }
  .pc-faqClean-title{ font-size:30px; }
}
/* === ROUND THE ENTIRE FAQ SECTION + LIGHT GRAY BACKGROUND === */
.pc-faqClean{
  background:#f3f3f3 !important;
  border-radius:40px;
  padding:120px 0;
}

/* round the inner container edges */
.pc-faqClean-inner{
  border-radius:36px;
}

/* left info card */
.pc-faqClean-card{
  border-radius:26px !important;
  background:#ffffff;
}

/* each accordion box */
.pc-faqClean-item{
  border-radius:22px !important;
  background:#ffffff;
}

/* open state */
.pc-faqClean-item.open .pc-faqClean-content{
  background:#ededed;
  border-radius:0 0 22px 22px;
}

/* mobile tighter rounding */
@media(max-width:768px){
  .pc-faqClean{
    border-radius:26px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d4939ea *//* =========================================================
   ✅ BOOKING SECTION (HERO COLORS) + FORM STYLES THAT WIN
   - Uses SAME gradient as your hero
   - Forces Elementor/theme overrides to stop
   - Fixes preview page not showing form colors
========================================================= */

/* SECTION */
.pc-book{
  position: relative !important;
  padding: 110px 0 !important;
  overflow: hidden !important;
  border-radius: 42px !important;

  background:
    radial-gradient(circle at 70% 25%, rgba(255,45,45,.22), transparent 38%),
    radial-gradient(circle at 20% 80%, rgba(255,0,0,.10), transparent 52%),
    linear-gradient(115deg, #040404 12%, #120000 46%, #640000 100%) !important;
}

/* inner layout */
.pc-book-inner{
  position: relative !important;
  z-index: 2 !important;
  width: calc(100% - 32px) !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: 1.25fr 1fr !important;
  gap: 70px !important;
  align-items: flex-start !important;
}

.pc-book-left{ padding-top: 18px !important; }

/* title */
.pc-book-title{
  color:#fff !important;
  font-size: 56px !important;
  line-height: 1.05 !important;
  margin: 0 0 32px !important;
  letter-spacing: -0.6px !important;
  max-width: 720px !important;
}

/* REVIEW CARD */
.pc-review-card{
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,80,80,.20) !important;
  border-radius: 26px !important;
  padding: 32px 34px !important;
  box-shadow: 0 30px 70px rgba(0,0,0,.45) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  max-width: 780px !important;
}

.pc-review-top{
  display:flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 18px !important;
}

.pc-quote{
  color:#ff2d2d !important;
  font-size: 54px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.pc-google{
  display:flex !important;
  align-items:center !important;
  gap: 10px !important;
  color: rgba(255,255,255,.85) !important;
  font-weight: 800 !important;
}

.pc-g-dot{
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,80,80,.25) !important;
  font-weight: 900 !important;
}

.pc-review-text{
  color: rgba(255,255,255,.90) !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
  margin: 0 0 30px !important;
  font-weight: 600 !important;
}

.pc-review-bottom{
  display:flex !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  gap: 18px !important;
}

.pc-review-name{
  color:#fff !important;
  font-weight: 900 !important;
  font-size: 18px !important;
  margin-bottom: 6px !important;
}
.pc-review-sub{
  color: rgba(255,255,255,.72) !important;
  font-size: 14px !important;
}

.pc-review-nav{ display:flex !important; gap: 10px !important; }

.pc-nav-btn{
  width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,80,80,.35) !important;
  background: rgba(255,255,255,.08) !important;
  color:#fff !important;
  font-size: 18px !important;
  cursor:pointer !important;
  transition: transform .15s ease, background .15s ease, border-color .15s ease !important;
}
.pc-nav-btn:hover{
  transform: translateY(-2px) !important;
  background: rgba(255,80,80,.25) !important;
  border-color: rgba(255,80,80,.65) !important;
}

/* fade animation */
.pc-fade-in{ animation: pcFade .22s ease both !important; }
@keyframes pcFade{
  from{ opacity:0; transform: translateY(6px); }
  to{ opacity:1; transform: translateY(0); }
}

/* =========================
   ✅ FORM — FORCE COLORS
   (This is the part that fixes Preview page)
========================= */
.pc-book .pc-form-card{
  background: #ffffff !important;
  border-radius: 28px !important;
  padding: 34px 34px 28px !important;
  box-shadow: 0 30px 70px rgba(0,0,0,.45) !important;
}

.pc-book .pc-form-title{
  margin: 0 0 18px !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  color: #111 !important;
}

/* ensure Elementor/theme doesn't restyle */
.pc-book .pc-form,
.pc-book .pc-form *{
  box-sizing: border-box !important;
  font-family: inherit !important;
}

.pc-book .pc-row{
  display:flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

.pc-book .pc-label{
  font-size: 12px !important;
  font-weight: 800 !important;
  color: #3b3b3b !important;
  letter-spacing: .2px !important;
}

/* apply to input/select/textarea AND your .pc-field class */
.pc-book .pc-field,
.pc-book input.pc-field,
.pc-book select.pc-field,
.pc-book textarea.pc-field{
  width: 100% !important;
  min-height: 48px !important;
  height: auto !important;
  border-radius: 10px !important;
  border: 1px solid rgba(0,0,0,.14) !important;
  background: #ffffff !important;
  padding: 0 14px !important;
  font-size: 14px !important;
  color: #111111 !important;
  outline: none !important;

  /* remove theme styling */
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.pc-book textarea.pc-field,
.pc-book .pc-textarea{
  min-height: 120px !important;
  padding: 12px 14px !important;
  resize: vertical !important;
}

/* placeholder color */
.pc-book .pc-field::placeholder{
  color: rgba(17,17,17,.55) !important;
}

/* focus ring in brand */
.pc-book .pc-field:focus{
  border-color: rgba(196,0,0,.70) !important;
  box-shadow: 0 0 0 4px rgba(196,0,0,.12) !important;
}

/* submit button */
.pc-book .pc-submit{
  margin-top: 8px !important;
  min-height: 52px !important;
  width: 100% !important;
  border: 0 !important;
  border-radius: 12px !important;

  background: linear-gradient(135deg,#ff2d2d,#b30000) !important;
  color:#ffffff !important;
  font-weight: 900 !important;
  letter-spacing: .2px !important;
  cursor:pointer !important;

  box-shadow: 0 18px 40px rgba(255,0,0,.22) !important;
  transition: transform .15s ease, filter .15s ease, box-shadow .15s ease !important;
}

.pc-book .pc-submit:hover,
.pc-book .pc-submit:focus{
  transform: translateY(-2px) !important;
  filter: brightness(1.05) !important;
  box-shadow: 0 22px 46px rgba(255,0,0,.30) !important;
}

.pc-book .pc-form-foot{
  margin-top: 10px !important;
  font-size: 13px !important;
  color: #555 !important;
}

.pc-book .pc-form-foot a{
  color: #c40000 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}
.pc-book .pc-form-foot a:hover{
  text-decoration: underline !important;
  color: #c40000 !important;
}

/* kill blue hover anywhere inside section */
.pc-book a,
.pc-book a:hover,
.pc-book a:focus,
.pc-book a:active{
  color: inherit !important;
}

/* TABLET */
@media (max-width:1024px){
  .pc-book-inner{
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }
  .pc-book-title{
    font-size: 40px !important;
    max-width: none !important;
  }
  .pc-review-card{ max-width: none !important; }
}

/* MOBILE */
@media (max-width:768px){
  .pc-book{ padding: 70px 0 !important; border-radius: 26px !important; }
  .pc-book-left{ padding-top: 0 !important; }

  .pc-book-title{
    font-size: 30px !important;
    line-height: 1.15 !important;
    margin-bottom: 22px !important;
  }

  .pc-review-card{
    padding: 24px 20px !important;
    border-radius: 22px !important;
  }
  .pc-review-text{
    font-size: 16px !important;
    margin-bottom: 22px !important;
  }

  .pc-form-card{
    padding: 26px 18px 20px !important;
    border-radius: 22px !important;
  }
}/* End custom CSS */
/* Start custom CSS *//* 🚫 KILL PAGE OVERFLOW */
html, body{
  overflow-x: hidden !important;
}/* End custom CSS */