/* ==========================================================================
   TurnUp Pro — design polish layer
   Everything here targets block styles registered in functions.php or
   utility classes used by the theme patterns. All content stays fully
   editable in Gutenberg; this file only adds visual finish.
   ========================================================================== */

/* ---------- Cards ---------- */
.is-style-card,
.is-style-card-dark,
.is-style-card-featured {
  border-radius: 18px;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.is-style-card {
  background: #fff;
  border: 1px solid var(--wp--preset--color--border-light, #E4E8F4);
  box-shadow: 0 8px 28px rgba(10, 16, 46, .06);
}
.is-style-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 44px rgba(10, 16, 46, .12);
}

.is-style-card-dark {
  background: linear-gradient(160deg, #141C4A 0%, #0E1538 100%);
  border: 1px solid rgba(169, 179, 214, .18);
  box-shadow: 0 10px 34px rgba(4, 8, 26, .45);
}
.is-style-card-dark:hover {
  transform: translateY(-6px);
  border-color: rgba(6, 182, 212, .5);
}

.is-style-card-featured {
  background: #fff;
  border: 2px solid transparent;
  background-image: linear-gradient(#fff, #fff),
    linear-gradient(135deg, #4F46E5, #06B6D4);
  background-origin: border-box;
  background-clip: padding-box, border-box;
  box-shadow: 0 24px 60px rgba(79, 70, 229, .22);
  position: relative;
}
.is-style-card-featured:hover { transform: translateY(-6px); }

/* ---------- Buttons ---------- */
.wp-block-button.is-style-ghost-light .wp-block-button__link {
  background: transparent;
  border: 1.5px solid rgba(255, 255, 255, .45);
  color: #fff;
}
.wp-block-button.is-style-ghost-light .wp-block-button__link:hover {
  background: rgba(255, 255, 255, .1);
  border-color: #fff;
}
.wp-block-button.is-style-accent-cta .wp-block-button__link {
  background: var(--wp--preset--color--accent, #FFB020);
  color: #0A102E;
  font-weight: 700;
  box-shadow: 0 10px 26px rgba(255, 176, 32, .35);
}
.wp-block-button.is-style-accent-cta .wp-block-button__link:hover {
  background: #FFC24D;
  color: #0A102E;
}
.wp-block-button__link {
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.wp-block-button__link:hover { transform: translateY(-2px); }

/* ---------- Checklists ---------- */
ul.is-style-checklist,
ul.is-style-checklist-dark {
  list-style: none;
  padding-left: 0;
}
ul.is-style-checklist li,
ul.is-style-checklist-dark li {
  position: relative;
  padding-left: 1.9em;
  margin-bottom: .55em;
}
ul.is-style-checklist li::before,
ul.is-style-checklist-dark li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .18em;
  width: 1.15em;
  height: 1.15em;
  border-radius: 50%;
  background: rgba(16, 185, 129, .14) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%2310B981" stroke-width="3.4" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>') center/62% no-repeat;
}
ul.is-style-checklist-dark li::before {
  background-color: rgba(16, 185, 129, .22);
}

/* ---------- Eyebrow + badge ---------- */
p.is-style-eyebrow {
  display: inline-block;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--wp--preset--color--secondary, #06B6D4);
  background: rgba(6, 182, 212, .1);
  border: 1px solid rgba(6, 182, 212, .35);
  border-radius: 999px;
  padding: .35em 1em;
  margin-bottom: 0;
}
p.is-style-badge {
  display: inline-block;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #0A102E;
  background: var(--wp--preset--color--accent, #FFB020);
  border-radius: 999px;
  padding: .3em .95em;
  margin-bottom: 0;
}

/* ---------- Gradient heading ---------- */
.is-style-gradient-text {
  background: linear-gradient(135deg, #7B74FF 0%, #4F46E5 35%, #06B6D4 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
}

/* ---------- FAQ (core/details) ---------- */
details.is-style-faq {
  background: #fff;
  border: 1px solid var(--wp--preset--color--border-light, #E4E8F4);
  border-radius: 14px;
  padding: 1.1rem 1.4rem;
  margin-bottom: .9rem;
  box-shadow: 0 4px 14px rgba(10, 16, 46, .04);
  transition: border-color .2s ease;
}
details.is-style-faq[open] { border-color: var(--wp--preset--color--primary, #4F46E5); }
details.is-style-faq > summary {
  cursor: pointer;
  font-weight: 700;
  font-size: 1.05rem;
  list-style: none;
  position: relative;
  padding-right: 2.2rem;
}
details.is-style-faq > summary::-webkit-details-marker { display: none; }
details.is-style-faq > summary::after {
  content: "+";
  position: absolute;
  right: .1rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  background: rgba(79, 70, 229, .1);
  color: var(--wp--preset--color--primary, #4F46E5);
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .2s ease;
}
details.is-style-faq[open] > summary::after {
  content: "–";
  transform: translateY(-50%) rotate(180deg);
}

/* ---------- Image placeholder frames ---------- */
.turnup-img-frame img {
  border-radius: 18px;
  box-shadow: 0 24px 60px rgba(10, 16, 46, .18);
}
.turnup-img-frame-glow img {
  border-radius: 18px;
  box-shadow: 0 0 0 1px rgba(6, 182, 212, .35), 0 24px 70px rgba(79, 70, 229, .35);
}

/* ---------- Header ---------- */
.turnup-header {
  position: sticky;
  top: 0;
  z-index: 99;
  backdrop-filter: saturate(160%) blur(14px);
  -webkit-backdrop-filter: saturate(160%) blur(14px);
  background: rgba(10, 16, 46, .88) !important;
  border-bottom: 1px solid rgba(169, 179, 214, .14);
}
.turnup-header .wp-block-navigation a:hover { color: var(--wp--preset--color--secondary, #06B6D4); }
.turnup-header .wp-block-navigation__submenu-container {
  background: #101736 !important;
  border: 1px solid rgba(169, 179, 214, .18) !important;
  border-radius: 12px;
  padding: .4rem;
  min-width: 230px !important;
}
.turnup-header .wp-block-navigation__submenu-container a { border-radius: 8px; }
.turnup-header .wp-block-navigation__submenu-container a:hover { background: rgba(79, 70, 229, .25); }

/* ---------- Topbar ---------- */
.turnup-topbar { font-size: .82rem; }
.turnup-topbar a { color: #fff; }

/* ---------- Tables (domain pricing) ---------- */
.turnup-pricing-table table {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--wp--preset--color--border-light, #E4E8F4);
  border-radius: 14px;
  overflow: hidden;
}
.turnup-pricing-table thead th {
  background: var(--wp--preset--color--contrast, #0A102E);
  color: #fff;
  font-weight: 600;
  border: 0;
  padding: 1rem 1.2rem;
}
.turnup-pricing-table td {
  border: 0;
  border-top: 1px solid var(--wp--preset--color--border-light, #E4E8F4);
  padding: .95rem 1.2rem;
}
.turnup-pricing-table tbody tr:hover td { background: #F4F6FB; }

/* ---------- Misc ---------- */
.turnup-price-strike { text-decoration: line-through; opacity: .55; }
.turnup-stars { color: #FFB020; letter-spacing: .1em; }
.turnup-divider-soft {
  border: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(169, 179, 214, .4), transparent);
}

/* Smooth anchors */
html { scroll-behavior: smooth; }

/* Featured plan ribbon */
.turnup-ribbon {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  z-index: 2;
}

/* Make sticky header not overlap anchor targets */
[id] { scroll-margin-top: 90px; }

/* ==========================================================================
   v2 — approved preview design layer (green brand)
   ========================================================================== */

.is-style-gradient-text,
.turnup-grad {
  background: linear-gradient(135deg, #86EFAC 0%, #22C55E 35%, #A3E635 100%);
  background-size: 200% 200%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  animation: turnup-gradmove 5s ease infinite;
}
@keyframes turnup-gradmove{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}

p.is-style-eyebrow {
  color: #86EFAC;
  background: rgba(34, 197, 94, .12);
  border-color: rgba(34, 197, 94, .4);
}

/* hero trust chips */
.turnup-chips { gap: .55rem !important; }
.turnup-chips p {
  font-size: .85rem; font-weight: 600; color: #fff;
  background: rgba(16, 185, 129, .16);
  border: 1px solid rgba(16, 185, 129, .45);
  border-radius: 999px; padding: .32em .95em; margin: 0;
}

/* price row: badge beside price */
.turnup-price-row { align-items: center !important; gap: .6rem !important; }
.turnup-price-row .is-style-badge { margin: 0; font-size: .68rem; white-space: nowrap; }

/* step numbers */
.turnup-stepnum {
  width: 3rem; height: 3rem; margin: 0 auto .4rem; border-radius: 50%;
  display: grid; place-items: center; font-weight: 800; font-size: 1.3rem; color: #fff !important;
  background: linear-gradient(135deg, #22C55E, #A3E635);
}

/* included grid chips */
.turnup-inc {
  background: #fff; border: 1px solid var(--wp--preset--color--border-light, #E4E8F4);
  border-radius: 12px; padding: .65rem .9rem !important;
  font-weight: 600; font-size: .92rem; color: #10B981;
  display: flex; align-items: center; gap: .65rem; transition: .2s;
}
.turnup-inc:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(10,16,46,.08); }

/* comparison + vs tables */
.turnup-cmp table td, .turnup-cmp table th { text-align: center; vertical-align: middle; }
.turnup-cmp table td:first-child, .turnup-cmp table th:first-child { text-align: left; }
.turnup-cmp thead th.turnup-featcol,
.turnup-cmp thead tr th:nth-child(3) { background: linear-gradient(135deg, #22C55E, #A3E635); color: #0A2818; }
.turnup-vs table td:nth-child(2) { color: #10B981; font-weight: 700; }
.turnup-vs table td:nth-child(3) { color: #B4443C; opacity: .85; }

/* support stat tiles */
.turnup-stat {
  background: rgba(255,255,255,.06); border: 1px solid rgba(169,179,214,.2);
  border-radius: 12px; padding: .9rem 1.1rem !important;
}

/* flags */
.turnup-flag img { width: 66px; height: 44px; border-radius: 8px; margin: 0 auto;
  box-shadow: 0 6px 18px rgba(0,0,0,.4); border: 1px solid rgba(255,255,255,.25); }

/* animations */
@keyframes turnup-floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.turnup-img-frame-glow img { animation: turnup-floaty 6.5s ease-in-out infinite; }
.turnup-reveal { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s ease; }
.turnup-reveal.turnup-in { opacity: 1; transform: none; }
@keyframes turnup-pulseglow{0%,100%{box-shadow:0 0 0 0 rgba(255,176,32,.55)}50%{box-shadow:0 0 0 9px rgba(255,176,32,0)}}
.turnup-deal { animation: turnup-pulseglow 2.4s infinite; border-radius: 999px; }
.wp-block-button.is-style-accent-cta .wp-block-button__link { position: relative; overflow: hidden; }
.wp-block-button.is-style-accent-cta .wp-block-button__link::after {
  content:""; position:absolute; top:0; left:-80%; width:50%; height:100%;
  background:linear-gradient(115deg,transparent,rgba(255,255,255,.5),transparent);
  transform:skewX(-24deg); animation:turnup-shine 4.5s ease-in-out infinite;
}
@keyframes turnup-shine{0%,60%{left:-80%}100%{left:130%}}

/* topbar pills */
.turnup-pill {
  display:inline-block; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.4);
  border-radius:999px; padding:.1rem .85rem; font-weight:700; color:#fff !important; text-decoration:none;
}
.turnup-pill:hover { background:#fff; color:#16A34A !important; }

/* header fallback logo mark */
.turnup-logomark {
  width: 38px; height: 38px; border-radius: 10px; display: grid; place-items: center;
  background: linear-gradient(135deg, #22C55E, #A3E635); color: #fff; font-size: 1rem; font-weight: 800;
}
.turnup-header .custom-logo { max-height: 46px; width: auto; }

/* domain search form */
.turnup-domainform { display:flex; gap:.6rem; flex-wrap:wrap; justify-content:center; max-width:680px; margin:0 auto; }
.turnup-domainform input[type=text]{ flex:1 1 280px; padding:.95rem 1.25rem; border-radius:10px;
  border:1px solid rgba(169,179,214,.4); font-size:1rem; background:#fff; color:#0A102E; }
.turnup-domainform button{ padding:.95rem 1.9rem; border-radius:10px; border:0; cursor:pointer;
  background:linear-gradient(135deg,#22C55E,#A3E635); color:#fff; font-weight:700; font-size:1rem; }
.turnup-domainform button.ghost{ background:transparent; border:1.5px solid rgba(255,255,255,.45); color:#fff; }
.turnup-domainform button.ghost:hover{ background:rgba(255,255,255,.1); }

/* headline balance */
h1, h2, h3 { text-wrap: balance; }

/* text-based heading colors on price */
.turnup-price { letter-spacing: -0.02em; }

/* ---------- Mega menu (desktop) ---------- */
.turnup-meganav ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 1.4rem; align-items: center; }
.turnup-meganav li { position: relative; }
.turnup-meganav > ul > li > a { color: #fff; font-weight: 500; font-size: .98rem; text-decoration: none; padding: .6rem 0; display: inline-block; }
.turnup-meganav > ul > li > a:hover { color: #A3E635; }
.tm-mega {
  position: absolute; top: 100%; left: 50%; transform: translateX(-50%);
  background: #101736; border: 1px solid rgba(169,179,214,.18); border-radius: 16px;
  padding: 1rem; display: none; grid-template-columns: 1fr 1fr 230px; gap: .35rem 1rem;
  width: 780px; box-shadow: 0 24px 60px rgba(0,0,0,.5); z-index: 999;
}
.tm-mega::before { content: ""; position: absolute; top: -12px; left: 0; right: 0; height: 12px; }
.tm-has-panel:hover .tm-mega { display: grid; }
.tm-mega.tm-small { grid-template-columns: 1fr; width: 300px; }
.tm-item { display: flex; gap: .75rem; align-items: center; padding: .55rem .7rem; border-radius: 10px; text-decoration: none; transition: .15s; }
.tm-item:hover { background: rgba(34,197,94,.16); }
.tm-item img { border-radius: 10px; flex: 0 0 auto; }
.tm-item span { display: flex; flex-direction: column; line-height: 1.25; }
.tm-item b { color: #fff; font-size: .93rem; }
.tm-item small { color: #A9B3D6; font-size: .78rem; }
.tm-promo {
  grid-row: 1 / span 4; grid-column: 3;
  background: linear-gradient(160deg, rgba(34,197,94,.25), rgba(163,230,53,.12));
  border: 1px solid rgba(34,197,94,.4); border-radius: 12px; padding: 1.1rem;
  display: flex; flex-direction: column; gap: .6rem; justify-content: center;
}
.tm-promo b { color: #fff; font-size: 1.05rem; }
.tm-promo p { color: #A9B3D6; font-size: .85rem; line-height: 1.5; margin: 0; }
.tm-promo a { color: #FFB020; font-weight: 700; text-decoration: none; }

/* desktop: mega nav on, hamburger off — mobile: reversed */
@media (min-width: 961px) { .turnup-mobilenav { display: none !important; } }
@media (max-width: 960px) { .turnup-meganav { display: none !important; } }

/* ==========================================================================
   Responsive layer — tablets & phones
   (Core columns already stack below 782px; this tightens tablets + tables.)
   ========================================================================== */

/* every table scrolls sideways instead of breaking the layout */
figure.wp-block-table { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.turnup-cmp table, .turnup-vs table, .turnup-pricing-table table { min-width: 560px; }

/* Tablets (782–1024px): 4-across rows become 2x2 instead of cramming */
@media (min-width: 782px) and (max-width: 1024px) {
  .wp-block-column:first-child:nth-last-child(4),
  .wp-block-column:first-child:nth-last-child(4) ~ .wp-block-column {
    flex-basis: 47% !important; flex-grow: 1;
  }
  .wp-block-columns { flex-wrap: wrap !important; }
  .turnup-meganav ul { gap: .9rem; }
  .turnup-meganav > ul > li > a { font-size: .9rem; }
  .tm-mega { width: 620px; grid-template-columns: 1fr 1fr 190px; }
}

/* Phones */
@media (max-width: 781px) {
  .turnup-topbar { font-size: .74rem; line-height: 1.9; }
  .turnup-topbar .turnup-pill { padding: .05rem .7rem; }
  h1 { font-size: clamp(1.9rem, 8vw, 2.5rem) !important; }
  .turnup-price { font-size: 2.2rem !important; }
  .turnup-chips p { font-size: .78rem; }
  .wp-block-buttons .wp-block-button { flex: 1 1 auto; }
  .wp-block-buttons .wp-block-button__link { width: 100%; text-align: center; }
  .is-style-card, .is-style-card-dark, .is-style-card-featured { padding: 1.4rem !important; }
  .turnup-domainform input[type=text] { flex-basis: 100%; }
  .turnup-domainform button { flex: 1 1 auto; }
  [id] { scroll-margin-top: 130px; }
}

/* sticky header: give the mobile overlay menu room */
@media (max-width: 960px) {
  .turnup-header .wp-block-navigation__responsive-container.is-menu-open { padding-top: 5rem; }
}

/* Default button visibility guarantee (gradient fallback, loses to any is-style-*) */
.wp-block-button .wp-block-button__link:where(:not(.has-background)) {
  background: linear-gradient(135deg, #16A34A, #A3E635);
  color: #fff;
}

/* Mega menu built from blocks (editable template part) */
.turnup-meganav { gap: 1.4rem !important; align-items: center; }
.tm-top { margin: 0; }
.tm-top a { color: #fff; font-weight: 500; font-size: .98rem; text-decoration: none; padding: .6rem 0; display: inline-block; }
.tm-top a:hover { color: #A3E635; }
.tm-has-panel { position: relative; }
.tm-has-panel:hover .tm-mega { display: grid; }
.tm-item-blk { padding: .55rem .7rem; border-radius: 10px; gap: .75rem !important; align-items: center !important; transition: .15s; }
.tm-item-blk:hover { background: rgba(34,197,94,.16); }
.tm-ico { margin: 0; }
.tm-ico img { border-radius: 10px; display: block; }
.tm-title { margin: 0; line-height: 1.25; }
.tm-title a { color: #fff; font-size: .93rem; text-decoration: none; }
.tm-desc { margin: 0; color: #A9B3D6; font-size: .78rem; line-height: 1.3; }
.tm-promo-blk { grid-column: 3; grid-row: 1 / span 4;
  background: linear-gradient(160deg, rgba(34,197,94,.25), rgba(163,230,53,.12));
  border: 1px solid rgba(34,197,94,.4); border-radius: 12px; padding: 1.1rem !important;
  display: flex; flex-direction: column; gap: .5rem; justify-content: center; }
.tm-promo-blk p { margin: 0; }
.tm-promo-blk .tm-promo-t { color: #fff; font-weight: 700; font-size: 1.05rem; }
.tm-promo-blk .tm-desc { font-size: .85rem; line-height: 1.5; }
.tm-promo-blk a { color: #FFB020; font-weight: 700; text-decoration: none; }

/* show panels expanded inside the Site Editor so they're easy to edit */
.editor-styles-wrapper .tm-mega { display: grid !important; position: static; transform: none; width: 100%; }

/* flags: truly centered in their cards */
.turnup-flag { margin-left: auto; margin-right: auto; }
.turnup-flag img { display: block; margin: 0 auto; }

/* footer link columns: airy line spacing, hover accent */
.turnup-footer .turnup-flinks { line-height: 2.1; }
.turnup-footer .turnup-flinks a { color: var(--wp--preset--color--muted-dark, #A9B3D6); text-decoration: none; }
.turnup-footer .turnup-flinks a:hover { color: #A3E635; }
.turnup-footer ul { list-style: none; padding-left: 0; }

/* topbar pills: high-contrast so they read as buttons */
.turnup-pill {
  background: #fff; border: 0; color: #16A34A !important; font-weight: 800;
  box-shadow: 0 3px 10px rgba(10,16,46,.18);
}
.turnup-pill:hover { background: #0A102E; color: #fff !important; }
.turnup-pill.turnup-deal { background: #fff; color: #16A34A !important; box-shadow: 0 3px 12px rgba(10,16,46,.25); }
.turnup-pill.turnup-deal:hover { background: #0A102E; color: #fff !important; }

/* icon cards (who-we-serve / services / atlanta) */
.turnup-cardico { margin: 0 auto .4rem; }
.turnup-cardico img { border-radius: 12px; }

/* ---- pixel parity with the HTML preview ----
   Remove WordPress's default flow gaps at the root and between full-width
   page sections (each section carries its own padding). Blog posts keep
   normal prose spacing (scoped to landing/page templates only). */
.wp-site-blocks > * { margin-block-start: 0 !important; }
.turnup-flow0 .wp-block-post-content > * { margin-block-start: 0 !important; }
.turnup-flow0 .wp-block-post-content > * + * { margin-block-start: 0 !important; }
body { margin: 0; }

/* ---- positioning parity with the HTML preview ---- */

/* Eyebrow pills: shrink-wrap the block itself and center it when the
   paragraph is center-aligned (inline-block only centered the text inside). */
p.is-style-eyebrow { display: table; }
p.is-style-eyebrow.has-text-align-center { margin-left: auto; margin-right: auto; }

/* Badges behave the same when used standalone */
p.is-style-badge { display: table; }
p.is-style-badge.has-text-align-center { margin-left: auto; margin-right: auto; }
.turnup-price-row p.is-style-badge { display: inline-block; }

/* Header CTAs: compact like the preview (theme buttons are larger by default) */
.turnup-header .wp-block-button__link {
  padding: 0.55rem 1.15rem;
  font-size: 0.9rem;
}

/* Featured card needs a positioning context for the Most Popular ribbon */
.is-style-card-featured { position: relative; }
.turnup-ribbon { position: absolute; top: -14px; left: 50%; transform: translateX(-50%); z-index: 2; white-space: nowrap; }

/* Pricing card CTA: full-width and centered inside the card, like the preview */
.is-style-card .wp-block-buttons .wp-block-button,
.is-style-card-featured .wp-block-buttons .wp-block-button,
.is-style-card-dark .wp-block-buttons .wp-block-button { flex: 1 1 auto; }
.is-style-card .wp-block-buttons .wp-block-button__link,
.is-style-card-featured .wp-block-buttons .wp-block-button__link,
.is-style-card-dark .wp-block-buttons .wp-block-button__link { width: 100%; text-align: center; }

/* Mega menu rows: keep icon and two-line text vertically centered */
.tm-item-blk { align-items: center !important; }
.tm-item-blk .tm-desc { max-width: 240px; }

/* Mega menu grid: strip WP flow margins inside the panel — the grid's own
   gap handles spacing, so every item row aligns flush (matches preview). */
.tm-mega > * { margin-block-start: 0 !important; margin-top: 0 !important; }
.turnup-meganav > * { margin-block-start: 0 !important; margin-top: 0 !important; }
.tm-item-blk > * { margin-block-start: 0 !important; }

/* ---- header CTAs: perfectly aligned ---- */
.turnup-header .wp-block-buttons { align-items: center; }
.turnup-header .wp-block-buttons .wp-block-button { margin: 0 !important; display: flex; align-items: center; }
.turnup-header .wp-block-button__link { line-height: 1.2; }
.turnup-header .wp-block-button.is-style-ghost-light .wp-block-button__link { padding-top: calc(0.55rem - 1.5px); padding-bottom: calc(0.55rem - 1.5px); }

/* ---- hero trust chips: 3 per row, like the preview ---- */
.turnup-chips { max-width: 560px; }
.turnup-chips p { flex: 1 1 calc(33.333% - .55rem); text-align: center; white-space: nowrap; }

/* ---- mega menu: forgiving hover (no vanishing panel) ---- */
.tm-mega {
  display: grid;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateX(-50%) translateY(8px);
  transition: opacity .18s ease, transform .18s ease, visibility 0s linear .3s;
}
.tm-mega::before { content: ""; position: absolute; top: -26px; left: -20px; right: -20px; height: 26px; }
.tm-has-panel:hover .tm-mega,
.tm-mega:hover {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
  transition-delay: 0s;
}
.tm-has-panel { padding-bottom: .4rem; margin-bottom: -.4rem; }
.editor-styles-wrapper .tm-mega { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
