/* PHA site — image & section overrides (loads after main.css) */

/* registration.html: breadcrumb photo (file + fallback if data-background not applied yet) */
.td-breadcrumb-area.pha-registration-breadcrumb {
  background-color: #1a1428;
  background-image: url("../img/breadcrumb/breadcrumb.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* registration.html: form above map — spacing and card padding */
.pha-registration-form-row {
  margin-bottom: 3rem;
}
@media (min-width: 992px) {
  .pha-registration-form-row {
    margin-bottom: 3.75rem;
  }
}
.pha-registration-form-card {
  padding: 2rem 1.5rem;
}
@media (min-width: 768px) {
  .pha-registration-form-card {
    padding: 2.5rem 2.5rem;
  }
}
.td-contact-form-box.pha-registration-form-box {
  padding-top: 0;
  margin-bottom: 0;
  position: relative;
}

/* registration: honeypot must NOT sit inside .row (Bootstrap flex shows a stray field on mobile) */
.pha-registration-form-box .pha-honeypot-wrap {
  position: absolute;
  left: -9999px;
  top: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  pointer-events: none;
  opacity: 0;
}
.pha-registration-form-box .pha-honeypot-wrap input {
  max-height: 0;
  max-width: 0;
}

/* registration: ajax-form.js thank-you / error line */
#registration-form .ajax-response.success {
  color: #15803d;
  font-weight: 600;
}
#registration-form .ajax-response.error {
  color: #b91c1c;
}

/* registration: optional add-on checkboxes */
.pha-registration-addons .form-check-input {
  width: 1.1em;
  height: 1.1em;
  margin-top: 0.2em;
}
.pha-registration-addons .form-check-label {
  padding-left: 0.25rem;
  line-height: 1.45;
}

/* Raster hero: <img> sits outside Swiper’s transformed layer (avoids compositor blur).
   Picture fills the full hero box; object-fit: cover prevents black gaps when text is
   taller than the intrinsic image aspect ratio (common below ~xl widths). */
.td-hero-area.pha-hero-photo {
  background-color: #0c0614;
}

.td-hero-area.pha-hero-photo .pha-hero-picture {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  line-height: 0;
  pointer-events: none;
}

.td-hero-area.pha-hero-photo .pha-hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}

.td-hero-area.pha-hero-photo .td-hero-3-zoom {
  position: relative;
  z-index: 1;
  background: transparent;
}

.td-hero-area.pha-hero-photo .td-hero-3-zoom .swiper-slide {
  background: transparent;
}

/* Purple band like index-3 countdown + four features (overrides data-background / SVG plates) */
.pha-purple-band {
  background-image: none !important;
  background: linear-gradient(
    145deg,
    #1a0d2e 0%,
    #3d1f5c 38%,
    #5c2d82 72%,
    #4a2570 100%
  ) !important;
}

.pha-footer-solid {
  background-image: none !important;
  background: linear-gradient(180deg, #0f172a 0%, #151d2e 100%) !important;
}

.pha-blog-hidden {
  display: none !important;
}

.pha-video-soon {
  cursor: default;
  pointer-events: none;
  opacity: 0.85;
}

.pha-video-soon .td-pulse-border {
  animation: none;
}

/* About the summit: keep two audience blocks on one row (theme divider margins were forcing wrap) */
.td-about-3-clients.pha-about-audience-row {
  flex-wrap: nowrap;
  align-items: stretch;
  column-gap: 0;
}
.td-about-3-clients.pha-about-audience-row .items {
  flex: 1 1 0;
  min-width: 0;
}
.td-about-3-clients.pha-about-audience-row .td-border {
  flex-shrink: 0;
  margin-left: 1.25rem;
  margin-right: 1.25rem;
  height: auto;
  align-self: stretch;
  min-height: 6.5rem;
}
@media (max-width: 575px) {
  .td-about-3-clients.pha-about-audience-row {
    flex-wrap: wrap;
  }
  .td-about-3-clients.pha-about-audience-row .td-border {
    display: none;
  }
  .td-about-3-clients.pha-about-audience-row .items {
    flex: 1 1 100%;
  }
}

/* Strategy banner: full-width photo via <img> + object-fit (no Jarallax scale/transform = sharper). */
.td-banner-area.pha-strategy-banner {
  background-image: none !important;
}
.td-banner-area.pha-strategy-banner .pha-strategy-banner__media {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  line-height: 0;
  pointer-events: none;
}
.td-banner-area.pha-strategy-banner .pha-strategy-banner__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* Summit pricing card: full-width left alignment (theme centers .td-pricing-2-item on some breakpoints) */
.td-pricing-area .td-pricing-2-item.td-pricing-3-item {
  text-align: left;
}

/* Summit pricing card: rates label */
.td-pricing-area .td-pricing-3-item .td-pricing-2-price.pha-summit-rates-label {
  display: block;
  width: 100%;
  text-align: left;
  padding-top: 10px;
  padding-bottom: 20px;
  margin-bottom: 0;
}
.td-pricing-area .td-pricing-3-item .td-pricing-2-price.pha-summit-rates-label .subtitle {
  font-size: clamp(1.375rem, 2.4vw, 1.875rem);
  font-weight: 600;
  line-height: 1.25;
  margin-bottom: 0.35rem;
}

.td-pricing-area .td-pricing-2-feature.pha-summit-pricing-feature {
  padding-left: 0;
  padding-right: 0;
}

/* Single-column summit pricing table inside pricing card */
.td-pricing-area .pha-summit-pricing-table {
  width: 100%;
  margin-bottom: 0;
  --pha-price-border: rgba(15, 23, 42, 0.12);
}
.td-pricing-area .pha-summit-pricing-table tbody tr {
  border-bottom: 1px solid var(--pha-price-border);
}
.td-pricing-area .pha-summit-pricing-table tbody tr:last-child {
  border-bottom: none;
}
.td-pricing-area .pha-summit-pricing-table tbody tr:first-child th,
.td-pricing-area .pha-summit-pricing-table tbody tr:first-child td {
  padding-top: 0.35rem;
}
.td-pricing-area .pha-summit-pricing-table th {
  font-weight: 400;
  color: inherit;
  padding: 1rem 0;
  vertical-align: top;
  text-align: left;
}
.td-pricing-area .pha-summit-pricing-table td {
  padding: 1rem 0;
  text-align: left;
  font-weight: 600;
  white-space: nowrap;
  vertical-align: top;
}
.td-pricing-area .pha-summit-pricing-table .pha-price-optional th {
  padding-top: 1.15rem;
}
