/* Bizniz Design 3 — purple header, 4×2 action grids, gallery, video, schedule CTA (Font Awesome on host pages). */
.pub-card--biznizdesign3,
.pub-card--template-03,
.bc-card.bc-t-template-03 {
  --bc-t3-accent: #5345e5;
  --bc-t3-accent-hover: #4336c4;
  --bc-t3-page: #f5f6fa;
  --bc-t3-card: #ffffff;
  --bc-t3-ink: #222222;
  --bc-t3-gold: #d4af37;
  font-family: var(--bc-t3-font-contact, Poppins, system-ui, -apple-system, "Segoe UI", sans-serif);
  width: 100%;
  max-width: 430px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.pub-card--biznizdesign3 *,
.pub-card--template-03 *,
.bc-card.bc-t-template-03 * {
  box-sizing: border-box;
}

.pub-card.pub-card--biznizdesign3,
.pub-card.pub-card--template-03 {
  overflow: visible;
  border: none;
  box-shadow: none;
  background: var(--bc-t3-page);
}

.bc-t3-profile-card {
  background-color: var(--bc-t3-card, #ffffff);
  width: 100%;
  max-width: 430px;
  border: 1px solid #dcdcdc;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
  overflow: visible;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
}

.bc-t3-header-section {
  background-color: var(--bc-t3-header, #5345e5);
  padding: 35px 20px 55px;
  text-align: center;
  position: relative;
}

/* ─────────────────────────────────────────────────────────────────
   Template 3 — No profile image / logo uploaded
   JS adds  .bc-t3-header-section--no-image  when profileUrl is empty.
   Hide the empty circle container and keep identity text centered.
───────────────────────────────────────────────────────────────── */
.pub-card--biznizdesign3 .bc-t3-header-section--no-image .bc-t3-logo-container,
.pub-card--template-03   .bc-t3-header-section--no-image .bc-t3-logo-container,
.bc-card.bc-t-template-03 .bc-t3-header-section--no-image .bc-t3-logo-container {
  display: none;
}

.pub-card--biznizdesign3 .bc-t3-header-section--no-image,
.pub-card--template-03   .bc-t3-header-section--no-image,
.bc-card.bc-t-template-03 .bc-t3-header-section--no-image {
  padding-top: 32px;
  padding-bottom: 40px;
}

.pub-card--biznizdesign3 .bc-t3-header-section--no-image .bc-t3-profile-name,
.pub-card--biznizdesign3 .bc-t3-header-section--no-image .bc-t3-profile-title,
.pub-card--biznizdesign3 .bc-t3-header-section--no-image .bc-t3-profile-company,
.pub-card--template-03   .bc-t3-header-section--no-image .bc-t3-profile-name,
.pub-card--template-03   .bc-t3-header-section--no-image .bc-t3-profile-title,
.pub-card--template-03   .bc-t3-header-section--no-image .bc-t3-profile-company,
.bc-card.bc-t-template-03 .bc-t3-header-section--no-image .bc-t3-profile-name,
.bc-card.bc-t-template-03 .bc-t3-header-section--no-image .bc-t3-profile-title,
.bc-card.bc-t-template-03 .bc-t3-header-section--no-image .bc-t3-profile-company {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.bc-t3-logo-container {
  width: 115px;
  height: 115px;
  background-color: #ffffff;
  border-radius: 50%;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 5px solid #000000;
  box-shadow:
    0 0 0 3px #ffffff,
    0 6px 20px rgba(0, 0, 0, 0.28);
  overflow: visible;
}

.bc-t3-logo-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 50%;
  display: block;
  box-sizing: border-box;
}

.bc-t3-logo-img.bc-t3-logo-img--brand {
  object-fit: contain;
  padding: 8%;
  border-radius: 0;
}

.bc-t3-logo-fallback {
  font-family: var(--bc-t3-font-personal, inherit);
  font-size: 1.65rem;
  font-weight: 700;
  color: #5c4827;
  line-height: 1;
}

.bc-t3-profile-name {
  color: var(--bc-t3-header-text, #ffffff);
  font-family: var(--bc-t3-font-personal, Poppins, system-ui, -apple-system, "Segoe UI", sans-serif);
  font-size: var(--tpl-identity-name-size, max(1.22rem, 1.33rem));
  font-weight: 800;
  letter-spacing: 0.5px;
  margin: 0.5rem 0 0;
  text-transform: uppercase;
  line-height: 1.14;
}

.bc-t3-profile-title {
  color: var(--bc-t3-header-text, #ffffff);
  font-family: var(--bc-t3-font-contact, inherit);
  font-size: var(--tpl-identity-sub-size, max(1.02rem, 1.05rem));
  font-weight: 400;
  letter-spacing: 0.8px;
  opacity: 0.95;
  margin: 0.5rem 0 0;
  text-transform: uppercase;
  line-height: 1.22;
}

.bc-t3-profile-company {
  color: var(--bc-t3-header-text, #ffffff);
  font-family: var(--bc-t3-font-contact, inherit);
  font-size: clamp(0.78rem, 3vw, var(--tpl-identity-company-size, 1.12rem)) !important;
  font-weight: 700;
  letter-spacing: 0.04em;
  opacity: 0.95;
  margin: 0;
  text-transform: uppercase;
  line-height: 1.1;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100%;
}

.bc-t3-buttons-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  padding: 0 16px;
  width: 100%;
  box-sizing: border-box;
}

.bc-t3-top-grid {
  --bc-t3-top-btn-h: calc(var(--tpl-ico-size, 65px) + 1.35rem);
  --bc-t3-banner-btn-overlap: 0.24;
  margin-top: calc(-1 * var(--bc-t3-top-btn-h) * var(--bc-t3-banner-btn-overlap));
  position: relative;
  z-index: 5;
  margin-bottom: 12px;
}

/* Full contact grid under header (no "Contact" section title) */
.bc-t3-hero-contact-grid {
  margin-bottom: 18px;
  row-gap: 12px;
}

.bc-t3-bottom-grid {
  margin-bottom: 12px;
}

.bc-t3-section-grid {
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  padding: 0 16px;
  width: 100%;
  box-sizing: border-box;
}

.bc-t3-meta-block {
  padding: 0 20px 16px;
  text-align: center;
}

.bc-t3-headline,
.bc-t3-accreditations {
  font-size: 13px;
  line-height: 1.45;
  color: var(--bc-t3-ink);
  margin: 0 0 6px;
  opacity: 0.88;
}

.bc-t3-btn-item--static {
  cursor: default;
  opacity: 0.92;
}

.bc-t3-btn-item[data-bc-coupon] {
  cursor: pointer;
  font: inherit;
}

/* Grid chip: square/circle icon tile + label below (matches Templates 1–2) */
.bc-t3-buttons-grid .bc-t3-btn-item,
.bc-t3-section-grid .bc-t3-btn-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 0.35rem;
  flex: 0 0 var(--tpl-ico-size, 65px);
  width: var(--tpl-ico-size, 65px);
  max-width: var(--tpl-ico-size, 65px);
  background: transparent;
  color: var(--bc-t3-ink, #222222);
  text-decoration: none;
  border: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  min-height: 0;
  min-width: 0;
  cursor: pointer;
  touch-action: manipulation;
  user-select: none;
  -webkit-user-select: none;
  transform: none !important;
  box-sizing: border-box;
}

.bc-t3-btn-item:hover {
  opacity: 1;
  visibility: visible;
}

.bc-t3-btn-item .bc-t3-btn-ico {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: var(--tpl-ico-size, 65px);
  height: var(--tpl-ico-size, 65px);
  min-width: var(--tpl-ico-size, 65px);
  max-width: var(--tpl-ico-size, 65px);
  min-height: var(--tpl-ico-size, 65px);
  max-height: var(--tpl-ico-size, 65px);
  aspect-ratio: 1 / 1;
  background-color: var(--bc-t3-accent);
  color: var(--bc-t3-icon-color, #ffffff);
  border-radius: var(--bc-t3-chip-radius, 10px) !important;
  box-sizing: border-box;
  overflow: hidden;
  transition: background-color 0.2s, transform 0.2s;
}

.pub-card--template-03[data-bc-icon-shape="circle"] .bc-t3-btn-ico,
.bc-card.bc-t-template-03[data-bc-icon-shape="circle"] .bc-t3-btn-ico,
[data-bc-t3="1"][data-bc-icon-shape="circle"] .bc-t3-btn-ico {
  border-radius: 50% !important;
}

.pub-card--template-03[data-bc-icon-shape="rounded"] .bc-t3-btn-ico,
.bc-card.bc-t-template-03[data-bc-icon-shape="rounded"] .bc-t3-btn-ico,
[data-bc-t3="1"][data-bc-icon-shape="rounded"] .bc-t3-btn-ico {
  border-radius: 10px !important;
}

.pub-card--template-03[data-bc-icon-shape="square"] .bc-t3-btn-ico,
.bc-card.bc-t-template-03[data-bc-icon-shape="square"] .bc-t3-btn-ico,
[data-bc-t3="1"][data-bc-icon-shape="square"] .bc-t3-btn-ico {
  border-radius: 2px !important;
}

.pub-card--template-03[data-bc-icon-shape="hexagon"] .bc-t3-buttons-grid .bc-t3-btn-item,
.pub-card--template-03[data-bc-icon-shape="hexagon"] .bc-t3-section-grid .bc-t3-btn-item,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"] .bc-t3-buttons-grid .bc-t3-btn-item,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"] .bc-t3-section-grid .bc-t3-btn-item,
[data-bc-t3="1"][data-bc-icon-shape="hexagon"] .bc-t3-buttons-grid .bc-t3-btn-item,
[data-bc-t3="1"][data-bc-icon-shape="hexagon"] .bc-t3-section-grid .bc-t3-btn-item {
  flex: 0 0 var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px));
  width: var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px));
  max-width: var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px));
}

.pub-card--template-03[data-bc-icon-shape="hexagon"] .bc-t3-btn-ico,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"] .bc-t3-btn-ico,
[data-bc-t3="1"][data-bc-icon-shape="hexagon"] .bc-t3-btn-ico {
  width: var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)) !important;
  height: var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)) !important;
  min-width: var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)) !important;
  max-width: var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)) !important;
  min-height: var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)) !important;
  max-height: var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)) !important;
  flex: 0 0 auto;
  align-self: center;
  border-radius: 0 !important;
  -webkit-clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"],
.pub-card--template-03[data-bc-icon-shape="hexagon"],
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"] {
  --bc-hex-clip: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  --bc-hex-ring-scale-white: calc((var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)) - 6px) / var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)));
  --bc-hex-ring-scale-black: calc((var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)) - 4px) / var(--tpl-ico-hex-size, var(--tpl-ico-size, 72px)));
  /* Same as box-shadow: 0 0 0 3px #fff, 0 0 0 4px rgba(15,23,42,0.22) — gray outer + white ring, transparent center */
  --bc-hex-white-ring-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 104 104'%3E%3Cpolygon fill='rgba(15%2C23%2C42%2C0.22)' points='24.31%2C-1.39 75.69%2C-1.39 101.39%2C50 75.69%2C101.39 24.31%2C101.39 -1.39%2C50'/%3E%3Cpath fill='%23ffffff' fill-rule='evenodd' d='M25%2C0 L75%2C0 L100%2C50 L75%2C100 L25%2C100 L0%2C50 Z M27.08%2C4.15 L72.92%2C4.15 L95.85%2C50 L72.92%2C95.85 L27.08%2C95.85 L4.15%2C50 Z'/%3E%3C/svg%3E");
}

.bc-t3-btn-item:hover .bc-t3-btn-ico {
  background-color: var(--bc-t3-accent-hover);
  transform: translateY(-2px);
}

.bc-t3-border-btn .bc-t3-btn-ico {
  border: 3px solid #ffffff;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.bc-t3-btn-item .bc-t3-btn-ico i {
  font-size: var(--tpl-ico-svg, 38px);
  line-height: 1;
  margin: 0;
  color: inherit !important;
}

/* Font Awesome brand glyphs must follow icon color picker, not built-in brand hues */
.bc-t3-btn-item .bc-t3-btn-ico .fa-brands,
.bc-t3-btn-item .bc-t3-btn-ico .fa-brands::before {
  color: inherit !important;
}

.bc-t3-btn-item .bc-t3-btn-ico svg,
.bc-t3-btn-item .bc-t3-btn-ico img.brand-ico {
  width: var(--tpl-ico-svg, 32px) !important;
  height: var(--tpl-ico-svg, 32px) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: var(--tpl-ico-glyph-max, var(--tpl-ico-svg, 38px)) !important;
  max-height: var(--tpl-ico-glyph-max, var(--tpl-ico-svg, 38px)) !important;
  display: block;
  object-fit: contain;
  flex-shrink: 1;
  fill: currentColor;
  color: inherit;
}

/* Client action chips — shape from action-links/, color from --bc-t3-icon-color */
.bc-t3-btn-item .bc-t3-btn-ico .brand-ico-mask {
  display: block;
  flex: 0 0 auto;
  width: var(--tpl-ico-svg, 32px) !important;
  height: var(--tpl-ico-svg, 32px) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: var(--tpl-ico-glyph-max, var(--tpl-ico-svg, 38px)) !important;
  max-height: var(--tpl-ico-glyph-max, var(--tpl-ico-svg, 38px)) !important;
  background-color: currentColor;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  color: inherit;
}

.bc-t3-btn-item .bc-t3-btn-ico .contact-icon-glyph {
  display: block;
  line-height: 1;
  font-size: var(--tpl-ico-svg, 38px) !important;
}

.bc-t3-btn-lbl,
.bc-t3-btn-item > span:not(.bc-t3-btn-ico):not(.bc-t3-btn-lbl) {
  font-size: clamp(0.5625rem, 2.6vw, 0.6875rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  text-align: center;
  line-height: 1.25;
  font-family: inherit;
  color: var(--bc-t3-ink, #222222);
  width: 100%;
  max-width: 100%;
  word-break: break-word;
  white-space: normal;
  text-transform: none;
}

/* Grubhub wordmark — bc-chip-icon-fit.css */

[data-bc-t3="1"][data-bc-icon-outline="1"]:not([data-bc-icon-shape="hexagon"]) .bc-t3-btn-item:not(.bc-t3-btn-item--guide) .bc-t3-btn-ico {
  border: 0 !important;
  box-shadow: none !important;
  background-color: var(--bc-t3-accent, #5345e5) !important;
  overflow: visible !important;
}

[data-bc-t3="1"][data-bc-icon-outline="1"]:not([data-bc-icon-shape="hexagon"])[data-bc-icon-outline-color="white"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide) .bc-t3-btn-ico,
[data-bc-t3="1"][data-bc-icon-outline="1"]:not([data-bc-icon-shape="hexagon"])[data-bc-icon-outline-color="white"] .bc-t3-border-btn .bc-t3-btn-ico {
  outline: none !important;
  box-shadow: 0 0 0 3px #ffffff, 0 0 0 4px rgba(15, 23, 42, 0.22) !important;
  -webkit-filter: none !important;
  filter: none !important;
}

[data-bc-t3="1"][data-bc-icon-outline="1"]:not([data-bc-icon-shape="hexagon"])[data-bc-icon-outline-color="black"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide) .bc-t3-btn-ico,
[data-bc-t3="1"][data-bc-icon-outline="1"]:not([data-bc-icon-shape="hexagon"])[data-bc-icon-outline-color="black"] .bc-t3-border-btn .bc-t3-btn-ico,
[data-bc-t3="1"][data-bc-icon-outline="1"]:not([data-bc-icon-shape="hexagon"]):not([data-bc-icon-outline-color]) .bc-t3-btn-item:not(.bc-t3-btn-item--guide) .bc-t3-btn-ico,
[data-bc-t3="1"][data-bc-icon-outline="1"]:not([data-bc-icon-shape="hexagon"]):not([data-bc-icon-outline-color]) .bc-t3-border-btn .bc-t3-btn-ico {
  outline: none !important;
  box-shadow: 0 0 0 2px #000000 !important;
  -webkit-filter: none !important;
  filter: none !important;
}

/* Hex ring — outer ::before outline + inner scaled ::after fill (matches box-shadow ring on other shapes) */
[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide) .bc-t3-btn-ico,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico {
  position: relative !important;
  isolation: isolate;
  outline: none !important;
  box-shadow: none !important;
  -webkit-filter: none !important;
  filter: none !important;
  overflow: visible !important;
  background-color: transparent !important;
  background: transparent !important;
  -webkit-clip-path: none !important;
  clip-path: none !important;
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::before,
[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::after,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::before,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::after,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::before,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::after {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  clip-path: var(--bc-hex-clip);
  -webkit-clip-path: var(--bc-hex-clip);
  box-sizing: border-box;
  pointer-events: none;
  z-index: 0;
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::after,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::after,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico::after {
  background-color: var(--bc-t3-accent, #5345e5);
  transform-origin: center center;
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="white"] .bc-t3-btn-ico::before,
[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"]:not([data-bc-icon-outline-color]) .bc-t3-btn-ico::before,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="white"] .bc-t3-btn-ico::before,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"]:not([data-bc-icon-outline-color]) .bc-t3-btn-ico::before,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="white"] .bc-t3-btn-ico::before,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"]:not([data-bc-icon-outline-color]) .bc-t3-btn-ico::before {
  background-color: transparent;
  background-image: var(--bc-hex-white-ring-svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-clip-path: none !important;
  clip-path: none !important;
  -webkit-filter: none;
  filter: none;
  transform: none;
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="white"] .bc-t3-btn-ico::after,
[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"]:not([data-bc-icon-outline-color]) .bc-t3-btn-ico::after,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="white"] .bc-t3-btn-ico::after,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"]:not([data-bc-icon-outline-color]) .bc-t3-btn-ico::after,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="white"] .bc-t3-btn-ico::after,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"]:not([data-bc-icon-outline-color]) .bc-t3-btn-ico::after {
  transform: scale(var(--bc-hex-ring-scale-white, 0.917));
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="black"] .bc-t3-btn-ico::before,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="black"] .bc-t3-btn-ico::before,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="black"] .bc-t3-btn-ico::before {
  background: #000000;
  -webkit-filter: none;
  filter: none;
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="black"] .bc-t3-btn-ico::after,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="black"] .bc-t3-btn-ico::after,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"][data-bc-icon-outline-color="black"] .bc-t3-btn-ico::after {
  transform: scale(var(--bc-hex-ring-scale-black, 0.944));
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide):hover .bc-t3-btn-ico {
  background-color: transparent !important;
  background: transparent !important;
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide):hover .bc-t3-btn-ico::after,
.pub-card--template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico:hover::after,
.bc-card.bc-t-template-03[data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico:hover::after {
  background-color: var(--bc-t3-accent-hover, var(--bc-t3-accent, #5345e5)) !important;
}

[data-bc-t3="1"][data-bc-icon-shape="hexagon"][data-bc-icon-outline="1"] .bc-t3-btn-ico > * {
  position: relative;
  z-index: 1;
}

[data-bc-t3="1"][data-bc-icon-outline="1"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide) .bc-t3-btn-ico i,
[data-bc-t3="1"][data-bc-icon-outline="1"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide) .bc-t3-btn-ico {
  color: var(--bc-t3-icon-color, #ffffff);
}

[data-bc-t3="1"][data-bc-icon-outline="1"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide):hover .bc-t3-btn-ico {
  background-color: var(--bc-t3-accent-hover, var(--bc-t3-accent, #5345e5)) !important;
  transform: translateY(-2px);
}

[data-bc-t3="1"][data-bc-icon-outline="1"] .bc-t3-btn-item:not(.bc-t3-btn-item--guide):hover .bc-t3-btn-ico i {
  color: var(--bc-t3-icon-color, #ffffff) !important;
  opacity: 1;
}

[data-bc-t3="1"][data-bc-icon-outline="1"] .bc-t3-border-btn .bc-t3-btn-ico {
  border: 0 !important;
  box-shadow: none !important;
}

.bc-t3-btn-item--guide {
  opacity: 0.55;
  pointer-events: none;
}

.bc-t3-section-heading {
  font-family: inherit;
  font-size: var(--bc-t3-heading-size, 18px);
  font-weight: 700;
  color: var(--bc-t3-ink);
  text-align: center;
  letter-spacing: 0.02em;
  margin: 20px 0 12px;
  text-transform: none;
}

.bc-t3-gallery-host {
  padding: 0 16px;
  margin-bottom: 25px;
  text-align: center;
}

.bc-t3-gallery-host .tpl-gallery-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px;
  margin: 0;
}

.bc-t3-gallery-host .tpl-gal-cell img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 10px;
  display: block;
}

.bc-t3-video-wrapper {
  padding: 0 16px;
  margin-bottom: var(--tpl-section-stack-gap, 25px);
  text-align: center;
}

.bc-t3-video-container {
  position: relative;
  width: 100%;
  min-height: 195px;
  border-radius: 14px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  border: 1px solid #e2e2e2;
}

.bc-t3-video-container--has-embed {
  min-height: 0;
  background-image: none !important;
  border: none;
  display: block;
}

.bc-t3-video-embed-host .bc-video-grid {
  width: 100%;
}

.bc-t3-video-overlay-text {
  padding-left: 18px;
  color: var(--bc-t3-gold);
  max-width: 50%;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 1;
}

.bc-t3-deco-stars {
  font-size: 7px;
  letter-spacing: 3px;
  opacity: 0.8;
}

.bc-t3-restaurant-title {
  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 1.5px;
  margin: 2px 0;
  border-bottom: 1px solid var(--bc-t3-gold);
  padding-bottom: 3px;
  width: 100%;
  text-transform: uppercase;
}

.bc-t3-restaurant-tagline {
  font-size: 6px;
  color: #ffffff;
  margin-top: 5px;
  letter-spacing: 0.4px;
  opacity: 0.9;
  white-space: nowrap;
}

.bc-t3-play-trigger {
  position: absolute;
  left: 51%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
  height: 44px;
  background-color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);
  color: #222222;
  text-decoration: none;
  z-index: 2;
  transition: transform 0.2s;
}

.bc-t3-play-trigger:hover {
  transform: translate(-50%, -50%) scale(1.1);
}

.bc-t3-play-trigger i {
  font-size: 15px;
  margin-left: 2px;
}

.bc-t3-footer-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  margin-top: 0;
  margin-bottom: var(--tpl-section-stack-gap, 25px);
  padding: 0 16px;
  width: 100%;
  box-sizing: border-box;
}

/* Email list sits between video and footer CTAs — full-width stacked layout */
.bc-t3-profile-card > .tpl-email-list {
  width: 100%;
  margin-top: var(--tpl-section-stack-gap, 25px);
  margin-bottom: var(--tpl-section-stack-gap, 25px);
  padding: 0 16px;
  box-sizing: border-box;
  color-scheme: light;
  text-align: center !important;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.bc-t3-profile-card > .tpl-email-list .tpl-module__title,
.bc-t3-profile-card > .tpl-email-list .tpl-email-list__title {
  font-family: inherit;
  font-size: var(--bc-t3-heading-size, 18px);
  font-weight: 700;
  color: var(--tpl-text, var(--bc-t3-ink, #111111));
  text-align: center !important;
  width: 100%;
  display: block;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: 0.5px;
  margin-top: 0;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.bc-t3-profile-card > .tpl-email-list .tpl-email-list__subtitle {
  font-size: var(--bc-t3-body-size, 14px);
  font-weight: 500;
  text-align: center !important;
  width: 100%;
  margin: 0 0 12px;
  line-height: 1.4;
  color: var(--tpl-muted, var(--bc-t3-ink, #111111));
}

.bc-t3-profile-card > .tpl-email-list .tpl-email-list__form {
  width: 100%;
  max-width: 100%;
  text-align: center;
}

.bc-t3-profile-card > .tpl-email-list .tpl-email-list__row {
  display: flex;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0.65rem;
  width: 100%;
}

.bc-t3-profile-card > .tpl-email-list .tpl-email-list__input {
  width: 100%;
  flex: none;
  min-height: 44px;
  padding: 0.65rem 0.75rem;
  font-size: var(--bc-t3-body-size, 14px);
  border-radius: 8px;
  border: 1px solid #cbd5e1 !important;
  background: #ffffff !important;
  color: #0f172a !important;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}

.bc-t3-profile-card > .tpl-email-list .tpl-email-list__input::placeholder {
  color: #64748b;
  opacity: 1;
}

.bc-t3-profile-card > .tpl-email-list .tpl-email-list__btn {
  width: 100%;
  min-height: 44px;
  padding: 0.72rem 1rem;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.5px;
  box-sizing: border-box;
  border: none;
  background: var(--bc-t3-accent, #5345e5) !important;
  color: #ffffff !important;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
}

.bc-t3-profile-card > .tpl-email-list .tpl-email-list__status {
  margin-top: 0.5rem;
  text-align: center;
}

.bc-t3-footer-action,
.bc-t3-footer-action--loan {
  display: block;
  margin-bottom: 0;
  width: 100%;
  max-width: 100%;
  align-self: stretch;
}

.bc-t3-footer-actions .tpl-cta-wrap--card-actions {
  width: 100%;
  max-width: 100%;
  align-self: stretch;
}

.bc-t3-footer-actions .bc-t3-action-btn {
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  touch-action: manipulation;
  box-sizing: border-box;
}

.bc-t3-footer-actions .tpl-email-list {
  width: 100%;
  margin: 0;
  box-sizing: border-box;
}

.bc-t3-footer-actions .tpl-module__title,
.bc-t3-footer-actions .tpl-email-list__title,
.bc-t3-footer-actions .tpl-email-list__subtitle {
  font-family: inherit;
  font-size: var(--bc-t3-heading-size, 18px);
  font-weight: 700;
  color: var(--bc-t3-ink, #111111);
  text-align: center;
  letter-spacing: 0.5px;
  margin: 0 0 12px;
  text-transform: uppercase;
}

.bc-t3-footer-actions .tpl-email-list__subtitle {
  font-size: var(--bc-t3-body-size, 14px);
  font-weight: 500;
  text-transform: none;
}

.bc-t3-action-btn {
  background-color: var(--bc-t3-accent);
  color: #ffffff;
  border: none;
  padding: 12px 28px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.5px;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(83, 69, 229, 0.25);
  transition: background-color 0.2s, transform 0.1s;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  text-align: center;
}

.bc-t3-action-btn:hover {
  background-color: var(--bc-t3-accent-hover);
  transform: translateY(-1px);
  color: #ffffff;
  opacity: 1;
  visibility: visible;
}

.bc-t3-action-btn--guide {
  opacity: 0.55;
  pointer-events: none;
}

.bc-t3-modules {
  padding: 0 16px 20px;
}

.bc-t3-modules .tpl-form,
.bc-t3-modules .tpl-email-list,
.bc-t3-modules .bc-loan-calculator {
  margin-top: 12px;
}

.bc-t3-modules .tpl-card-actions {
  padding: 0 0 12px;
  box-sizing: border-box;
}

.bc-t3-modules .bc-loan-calculator .bc-t3-section-heading {
  margin-top: 0;
}

.bc-t3-modules .tpl-module__title,
.bc-t3-modules .tpl-email-list__title,
.bc-t3-modules .tpl-email-list__subtitle {
  font-family: inherit;
  font-size: var(--bc-t3-heading-size, 18px);
  font-weight: 700;
  color: var(--bc-t3-ink, #111111);
  text-align: center;
  letter-spacing: 0.5px;
  margin: 20px 0 12px;
  text-transform: uppercase;
}

.bc-t3-modules .tpl-email-list__subtitle {
  font-size: var(--bc-t3-body-size, 14px);
  font-weight: 500;
  text-transform: none;
}

.pub-card--template-03 .tpl-footer--ember,
.bc-card.bc-t-template-03 .tpl-footer--ember {
  color: var(--bc-t3-ink, #111111);
}

/* Panel / builder: keep section titles readable on white card */
body.panel-page .preview-card-wrap .bc-t3-section-heading,
body.panel-page .preview-card-wrap .bc-t3-profile-card h2,
body.panel-page #previewMount .bc-t3-section-heading {
  color: var(--bc-t3-ink) !important;
}

/* Card action links — full-width icon buttons (after gallery / video) */
.pub-card--template-03 .tpl-card-actions,
.bc-card.bc-t-template-03 .tpl-card-actions {
  padding: 0 16px 12px;
  box-sizing: border-box;
}

.pub-card--template-03 .tpl-cta-wrap--card-actions,
.bc-card.bc-t-template-03 .tpl-cta-wrap--card-actions {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  align-items: stretch;
  width: 100%;
}

.pub-card--template-03 .tpl-card-action-btn,
.bc-card.bc-t-template-03 .tpl-card-action-btn {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  width: 100%;
  max-width: 100%;
  min-height: 2.75rem;
  padding: 0.72rem 1.15rem;
  border-radius: 8px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: none;
  text-decoration: none;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

.pub-card--template-03 .tpl-card-action-btn:not([style*="background"]),
.bc-card.bc-t-template-03 .tpl-card-action-btn:not([style*="background"]) {
  background-color: var(--bc-t3-accent, #5345e5);
  color: #fff;
}

.pub-card--template-03 .tpl-card-action-btn__ico,
.bc-card.bc-t-template-03 .tpl-card-action-btn__ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.35rem;
  height: 1.35rem;
  flex-shrink: 0;
  line-height: 0;
}

.pub-card--template-03 .tpl-card-action-btn__ico svg,
.bc-card.bc-t-template-03 .tpl-card-action-btn__ico svg {
  width: 100%;
  height: 100%;
  display: block;
}

.pub-card--template-03 .tpl-card-action-btn__ico img.brand-ico,
.bc-card.bc-t-template-03 .tpl-card-action-btn__ico img.brand-ico {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pub-card--template-03 .tpl-card-action-btn__ico .brand-ico-mask,
.bc-card.bc-t-template-03 .tpl-card-action-btn__ico .brand-ico-mask {
  background-color: currentColor;
  color: inherit;
}

