/* Hide default page titles */
.page h1.entry-title,
.page .entry-title,
.page .page-title {
  display: none !important;
}
#gform_wrapper_3.orbital-theme input:not([type=checkbox]):not([type=radio]),
#gform_wrapper_3.orbital-theme select,
#gform_wrapper_3.orbital-theme textarea {
  border-radius: 8px !important;
  border: 1px solid #d9d9d9 !important;
  font-family: var(--e-global-typography-text-font-family, Arial, sans-serif) !important;
}

#gform_wrapper_3.orbital-theme .gform_button {
  background: var(--e-global-color-primary, #111) !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 12px 20px !important;
}

/* Smooth continuous scrolling for Elementor Carousel */
.smooth-carousel .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  -o-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}
/* Card */
.cf7-card{
  max-width:760px;margin:0 auto;padding:24px;background:#fff;border:1px solid #ececec;
  border-radius:16px;box-shadow:0 4px 18px rgba(0,0,0,.04);
  font-family:var(--e-global-typography-text-font-family, system-ui), sans-serif;
}
.cf7-title{margin:0 0 8px;font-size:20px;font-weight:700;}
.cf7-note{margin:0 0 16px;color:#6b7280;font-size:14px;}
.cf7-group-label{display:block;margin:18px 0 8px;font-weight:600;}

/* Grid */
.cf7-grid{display:grid;gap:12px;}
.cf7-grid.onecol{grid-template-columns:1fr;}
.cf7-grid.twocol{grid-template-columns:1fr 1fr;}
@media (max-width:768px){ .cf7-grid.twocol{grid-template-columns:1fr;} }

/* Inputs */
.wpcf7 .cf7-card input[type="text"],
.wpcf7 .cf7-card input[type="email"],
.wpcf7 .cf7-card input[type="tel"],
.wpcf7 .cf7-card select,
.wpcf7 .cf7-card textarea{
  width:100%;padding:12px 14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;
  font-size:15px;line-height:1.4;box-sizing:border-box;
}
.wpcf7 .cf7-card textarea{min-height:140px;resize:vertical;}
.wpcf7 .cf7-card input:focus,.wpcf7 .cf7-card select:focus,.wpcf7 .cf7-card textarea:focus{
  outline:none;border-color:#111;box-shadow:0 0 0 3px rgba(17,17,17,.08);
}

/* Pills (Services + Budget) */
.cf7-grid.pills .wpcf7-list-item{margin:0;}
.cf7-grid.pills .wpcf7-list-item label{display:block;position:relative;width:100%;}
.cf7-grid.pills .wpcf7-list-item label input{
  position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;
}
.cf7-grid.pills .wpcf7-list-item-label{
  display:block;width:100%;
  border:1px solid #e5e7eb;background:#f7f7f8;color:#111;
  border-radius:10px;padding:10px 12px;transition:all .18s ease;text-align:left;
}
.cf7-grid.pills .wpcf7-list-item label input:checked + .wpcf7-list-item-label{
  background:#111;color:#fff;border-color:#111;
}

/* Budget: full-width single column */
.budget-pills .wpcf7-form-control.wpcf7-checkbox{
  display:grid;grid-template-columns:1fr;gap:12px;
}

/* Submit button */
.wpcf7 .cf7-card input[type="submit"]{
  display:block;width:100%;padding:14px;margin-top:12px;border:none;border-radius:10px;
  background:var(--e-global-color-primary,#111);color:#fff;font-size:16px;font-weight:600;
  cursor:pointer;transition:filter .15s ease;
}
.wpcf7 .cf7-card input[type="submit"]:hover{filter:brightness(.92);}

/* SERVICES: force two equal columns, pills fill full width */
.services-pills .wpcf7-form-control.wpcf7-checkbox{
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

/* Make each pill span its cell fully (override inline/inline-block) */
.services-pills .wpcf7-list-item{ display:block; margin:0; }
.services-pills .wpcf7-list-item label{ display:block; position:relative; width:100%; }
.services-pills .wpcf7-list-item label input{
  position:absolute; inset:0; width:100%; height:100%;
  opacity:0; cursor:pointer; margin:0;
}

/* Pill look */
.services-pills .wpcf7-list-item-label{
  display:block; width:100%;
  border:1px solid #e5e7eb; background:#f7f7f8; color:#111;
  border-radius:10px; padding:10px 12px; text-align:left;
  transition:all .18s ease;
}

/* Checked state */
.services-pills .wpcf7-list-item label input:checked + .wpcf7-list-item-label{
  background:#111; color:#fff; border-color:#111;
}

/* Stack to one column on mobile */
@media (max-width:768px){
  .services-pills .wpcf7-form-control.wpcf7-checkbox{
    grid-template-columns: 1fr;
  }
}
/* SERVICES — force two perfectly even columns, pills stretch full width */
.services-pills { width:100%; }

/* Make the checkbox group a flex grid */
.services-pills .wpcf7-form-control.wpcf7-checkbox {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  width:100% !important;
}

/* Each option takes half the row (two columns) */
.services-pills .wpcf7-list-item {
  display:block !important;
  margin:0 !important;
  flex:0 0 calc(50% - 6px) !important; /* 2 cols with 12px gap */
  max-width:calc(50% - 6px) !important;
}

/* Make the pill fill its cell */
.services-pills .wpcf7-list-item label {
  display:block !important;
  width:100% !important;
  position:relative;
}
.services-pills .wpcf7-list-item label input{
  position:absolute; inset:0; width:100%; height:100%;
  opacity:0; cursor:pointer; margin:0;
}
.services-pills .wpcf7-list-item-label{
  display:block !important; width:100% !important;
  border:1px solid #e5e7eb; background:#f7f7f8; color:#111;
  border-radius:10px; padding:10px 12px; text-align:left;
  transition:all .18s ease; min-height:44px; line-height:1.2;
}
.services-pills .wpcf7-list-item label input:checked + .wpcf7-list-item-label{
  background:#111; color:#fff; border-color:#111;
}

/* Stack to one column on mobile */
@media (max-width:768px){
  .services-pills .wpcf7-list-item{
    flex:0 0 100% !important; max-width:100% !important;
  }
}
.fullwidth-btn .elementor-button {
  width: 100% !important;
  display: block !important;
}

/* Stick the left panel without overlaying the form */
.sticky-left{
  position: sticky;
  top: 104px;               /* adjust to clear your header */
  align-self: flex-start;   /* keeps height natural inside flex row */
  z-index: 1;               /* below the form card if they overlap visually */
}

/* Layout guards so sticky behaves in flex containers */
.sticky-left,
.sticky-left *{box-sizing:border-box}
@media (max-width:1024px){
  .sticky-left{ position: static; }  /* no sticky on tablets/phones */
}


/* Remove white background ONLY on the form inside krma-contact-form wrapper */
.krma-contact-form .cf7-card {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important; /* Optional: remove interior padding */
}