/*
Theme Name: Indigo Rouw & Verlies
Description: Pixelgerichte ACF Flexible Content WordPress-thema voor Indigo.
Version: 1.2.34
Requires PHP: 8.0
Text Domain: indigo-rouw-verlies
*/
@import url("./assets/css/indigo-production.css");


html { scroll-behavior: smooth; }
body { margin: 0; }

.indigo-back-to-top {
  --indigo-back-to-top-progress: 0deg;
  position: fixed;
  z-index: 45;
  right: clamp(16px, 2vw, 32px);
  bottom: clamp(16px, 2vw, 32px);
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  padding: 0;
  color: var(--primary);
  background: conic-gradient(var(--primary) var(--indigo-back-to-top-progress), rgb(70 0 150 / .14) var(--indigo-back-to-top-progress));
  box-shadow: 0 10px 24px rgb(51 43 57 / .20);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  isolation: isolate;
  transform: translateY(12px);
  transition: box-shadow 180ms, opacity 180ms, transform 180ms, visibility 180ms;
}
.indigo-back-to-top::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 3px;
  border-radius: inherit;
  background: rgb(250 248 246);
  transition: background-color 180ms;
}
.indigo-back-to-top svg { width: 22px; height: 22px; transition: transform 180ms; }
.indigo-back-to-top.is-visible { visibility: visible; pointer-events: auto; opacity: 1; transform: translateY(0); }
.indigo-back-to-top.is-visible:hover { box-shadow: 0 14px 28px rgb(51 43 57 / .24); transform: translateY(-3px); }
.indigo-back-to-top.is-visible:hover::before { background: rgb(247 236 244); }
.indigo-back-to-top.is-visible:hover svg { transform: scale(1.08); }
.indigo-back-to-top:focus-visible { outline: 3px solid rgb(149 111 189); outline-offset: 3px; }
@media (max-width: 640px) { .indigo-back-to-top { width: 44px; height: 44px; } }
@media (prefers-reduced-motion: reduce) { .indigo-back-to-top, .indigo-back-to-top svg { transition: none; } }
.admin-bar .indigo-site-nav { top: 32px; }
@media (max-width: 782px) { .admin-bar .indigo-site-nav { top: 46px; } }
.indigo-mobile-toggle { display:none; background:none; border:0; color:inherit; font-size:1.6rem; }
.indigo-mobile-menu { display:none; }
.indigo-faq-answer[hidden] { display:none; }
.indigo-site-nav.is-scrolled .indigo-utility { max-height:0; opacity:0; }
.indigo-site-nav.is-scrolled .indigo-header { background:rgb(250 248 246 / .85); backdrop-filter:blur(12px); border-bottom:0; color:#332b39; }
.indigo-site-nav.is-scrolled .indigo-logo-dark { opacity:1; }
.indigo-site-nav.is-scrolled .indigo-logo-white { opacity:0; }
.indigo-site-nav.is-scrolled .indigo-outline { color:#332b39; border-color:rgb(51 43 57 / .2); }
.indigo-header nav .menu-item { display:block; list-style:none !important; }
.indigo-header nav .menu-item::marker { content:""; }
.indigo-header nav > a,.indigo-header nav .menu-item > a { font-size:.875rem; letter-spacing:.025em; color:rgb(255 255 255 / .9); }
.indigo-site-nav.is-scrolled .indigo-header nav > a,.indigo-site-nav.is-scrolled .indigo-header nav .menu-item > a { color:rgb(51 43 57 / .8); }
@media (max-width: 879px) {
  .indigo-mobile-toggle { display:block; cursor: pointer;}
  .indigo-header nav { display:none; }
  .indigo-header .md\:flex { display: none;}
  .indigo-mobile-menu.is-open { display:flex; flex-direction:column; gap:1rem; padding:1rem 1.5rem 1.5rem; background:rgb(250 248 246 / .96); color:#332b39; }
}
.indigo-section .indigo-reveal {
  opacity: 0;
  transform: translate3d(0, 28px, 0);
  transition: opacity var(--indigo-duration, 1.1s) cubic-bezier(.2,.7,.2,1), transform var(--indigo-duration, 1.1s) cubic-bezier(.2,.7,.2,1);
  transition-delay: calc(var(--indigo-base-delay, 0ms) + var(--indigo-delay, 0ms));
  will-change: opacity, transform;
}
.indigo-section .indigo-reveal-soft {
  opacity: 0;
  filter: blur(8px);
  transition: opacity var(--indigo-duration, 1.4s) ease, filter var(--indigo-duration, 1.4s) ease;
  transition-delay: calc(var(--indigo-base-delay, 0ms) + var(--indigo-delay, 0ms));
  will-change: opacity, filter;
}
.indigo-section .indigo-reveal-x { transform: translate3d(80px, 0, 0); }
.indigo-section .indigo-reveal-y-compact { transform: translate3d(0, 24px, 0); }
.indigo-section .indigo-reveal-y-card { transform: translate3d(0, 40px, 0); }
.indigo-section .indigo-reveal.is-visible { opacity: 1; transform: translate3d(0, 0, 0); }
.indigo-section .indigo-reveal-soft.is-visible { opacity: 1; filter: blur(0); }
.indigo-parallax { will-change: transform; }
.indigo-bg-light { background-color:#fffdfb !important; }
.indigo-bg-sand { background-color:#faf0e3 !important; }
.indigo-bg-lavender { background-color:#f9edfb !important; }
.indigo-bg-dark { background-color:#221c29 !important; color:#fff; }
.indigo-section-border { border:1px solid rgb(80 60 90 / .16); }
.indigo-shape-top::before,.indigo-shape-bottom::after { content:""; pointer-events:none; position:absolute; z-index:1; left:0; width:100%; height:72px; background-repeat:repeat-x; background-position:center; background-size:auto 100%; }
.indigo-shape-top::before { top:0; background-image:var(--indigo-shape-top); }
.indigo-shape-bottom::after { bottom:0; background-image:var(--indigo-shape-bottom); }
@media (prefers-reduced-motion: reduce) {
  .indigo-section .indigo-reveal,.indigo-section .indigo-reveal-soft { opacity:1; transform:none; filter:none; transition:none; }
  .indigo-parallax { transform:none !important; }
}


/* === Restored Rouw page refinements === */

/* Recognition cards: preview glow, smooth stable lift, staggered reveal */
main > section:nth-of-type(3) .indigo-inner-card {
  transition: opacity 1.1s cubic-bezier(0.2, 0.7, 0.2, 1), transform 500ms cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
  backface-visibility: hidden;
}
main > section:nth-of-type(3) .indigo-feature-card-hover-zone {
  position: relative;
}
main > section:nth-of-type(3) .indigo-feature-card-hover-zone:hover > .indigo-inner-card.is-visible {
  transform: translate3d(0, -2px, 0);
}

/* Guidance section: preview reveal timing and typography */
main > section:nth-of-type(4) .indigo-inner-card,
main > section:nth-of-type(4) .indigo-inner-copy {
  transition: opacity 1.1s cubic-bezier(0.2, 0.7, 0.2, 1), transform 1.1s cubic-bezier(0.2, 0.7, 0.2, 1);
  transition-delay: 0s !important;
}
main > section:nth-of-type(4) .indigo-inner-copy > p {
  margin-bottom: 16px;
}
main > section:nth-of-type(4) .indigo-inner-copy > h2 {
  font-weight: 400;
  font-size: 48px;
  line-height: 1.1;
  letter-spacing: -0.01em;
}
main > section:nth-of-type(4) .indigo-inner-copy > div {
  margin-top: 24px;
  font-weight: 400;
  line-height: 26px;
}
main > section:nth-of-type(4) .indigo-inner-copy > div > p:not(:last-child) {
  margin-bottom: 20px;
}

/* Expectation CTA: exact Lovable hover with stationary hit area */
main > section:nth-of-type(5) .bg-gradient-warm .mt-10:has(> a.group) {
  width: max-content;
}
main > section:nth-of-type(5) .bg-gradient-warm a.group {
  transform: translate3d(0, 0, 0);
  transition: color 150ms cubic-bezier(0.4, 0, 0.2, 1), background-color 150ms cubic-bezier(0.4, 0, 0.2, 1), border-color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
main > section:nth-of-type(5) .bg-gradient-warm .mt-10:has(> a.group):hover > a.group {
  transform: translate3d(0, -2px, 0) !important;
}
main > section:nth-of-type(5) .bg-gradient-warm a.group > span {
  transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* Contact submit: subtle smooth preview lift */
section#contact form button {
  transform: translate3d(0, 0, 0);
  transition: background-color 220ms ease, transform 220ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 220ms ease;
}
section#contact form button:hover {
  transform: translate3d(0, -2px, 0);
}

/* Header CTAs: restrained preview lift */
.indigo-header a.inline-flex {
  transition: background-color 220ms ease, transform 220ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 220ms ease;
}
.indigo-header a.inline-flex:hover {
  transform: translate3d(0, -2px, 0);
}

/* Indigo Hero desktop */
.indigo-hero-copy.relative.max-w-3xl p.text-base {font-weight: 500;}

/* Tablet guidance column gap: 20px tighter than desktop */
@media (min-width: 768px) and (max-width: 1023px) {
  main > section:nth-of-type(4) > .grid {
    column-gap: 60px;
  }
}

/* Mobile guidance image fills its column */
@media (max-width: 767px) {
  main > section:nth-of-type(4) .indigo-inner-card,
  main > section:nth-of-type(4) .indigo-inner-card > .relative {
    width: 100%;
    max-width: none;
  }
  main > section:nth-of-type(4) .indigo-inner-copy > h2 {
    font-size: 36px;
    line-height: 1.1;
  }
}

/* 640-767px: full width, 150px shorter */
@media (min-width: 640px) and (max-width: 767px) {
  main > section:nth-of-type(4) .indigo-inner-card > .relative {
    aspect-ratio: auto;
    height: calc((100vw - 48px) * 1.25 - 150px);
  }
}

/* 480-639px: full width, 100px shorter */
@media (min-width: 480px) and (max-width: 639px) {
  main > section:nth-of-type(4) .indigo-inner-card > .relative {
    aspect-ratio: auto;
    height: calc((100vw - 48px) * 1.25 - 100px);
  }
}


/* Section 5 CTA: exact Lovable transition scope */
main > section:nth-of-type(5) .bg-gradient-warm a.group {
  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
main > section:nth-of-type(5) .bg-gradient-warm a.group > span {
  transition-property: transform, translate, scale, rotate;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Workflow cards: exact Lovable transition */
main > section:nth-of-type(7) .indigo-step-card {
  transition: all 500ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* Workflow cards: shadow-only hover, no vertical movement */
main > section:nth-of-type(7) .indigo-step-card:hover {
  transform: none !important;
}
main > section:nth-of-type(7) .indigo-step-card > p:last-child {
  font-size: 14px;
  line-height: 22.75px;
  font-weight: 400;
  margin-top: 16px;
}

/* Workflow cards remain completely static on hover */
main > section:nth-of-type(7) .indigo-step-card:hover {
  transform: none !important;
  box-shadow: none !important;
}

/* Tailwind v4 uses the individual translate property for hover lift */
main > section:nth-of-type(7) .indigo-step-card:hover {
  translate: none !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Tablet workflow cards: tighter title and horizontal padding */
@media (min-width: 768px) and (max-width: 1023px) {
  main > section:nth-of-type(7) .indigo-step-card {
    padding-left: 30px;
    padding-right: 30px;
  }
  main > section:nth-of-type(7) .indigo-step-card > h3 {
    font-size: 22px;
  }
}

/* Tablet workflow card title refinement */
@media (min-width: 768px) and (max-width: 1023px) {
  main > section:nth-of-type(7) .indigo-step-card > h3 {
    font-size: 20px;
  }
}

/* Tablet workflow section heading */
@media (min-width: 768px) and (max-width: 1023px) {
  main > section:nth-of-type(7) .mb-16 > h2 {
    font-size: 38px;
  }
}

/* Tablet expectation card refinements */
@media (min-width: 768px) and (max-width: 1023px) {
  main > section:nth-of-type(5) .bg-gradient-warm {
    padding-left: 44px;
    padding-right: 44px;
  }
  main > section:nth-of-type(5) .bg-gradient-warm h2 {
    font-size: 32px;
  }
}

/* Tablet guidance section refinement */
@media (min-width: 768px) and (max-width: 1023px) {
  main > section:nth-of-type(4) > .grid {
    column-gap: 50px;
  }
  main > section:nth-of-type(4) .indigo-inner-copy > h2 {
    font-size: 42px;
  }
}

/* Tablet expectation title stays inside the card on two balanced lines */
@media (min-width: 768px) and (max-width: 1023px) {
  main > section:nth-of-type(5) .bg-gradient-warm h2 {
    white-space: normal;
    max-width: 560px;
    text-wrap: balance;
  }
}


/* Mobile expectation heading: full width with natural wrapping */
@media (max-width: 767px) {
  main > section:nth-of-type(5) .bg-gradient-warm h2 {
    width: 100%;
    max-width: 100%;
    white-space: normal;
    text-wrap: wrap;
    overflow-wrap: normal;
    word-break: normal;
  }
}

/* Indigo inner image/text responsive breakpoint */
@media (min-width: 1024px) {
  .lg\:gap-20 { gap: 5rem; }
  .lg\:max-w-none { max-width: none; }
  .lg\:order-1 { order: 1; }
  .lg\:order-2 { order: 2; }
}


/* Mobile navigation polish */
.indigo-mobile-toggle {
  display:none;
  width:44px;
  height:44px;
  padding:0;
  align-items:center;
  justify-content:center;
  border:1px solid transparent;
  border-radius:999px;
  background:transparent;
  color:inherit;
  cursor:pointer;
  transition:background-color 180ms ease,border-color 180ms ease;
}

.indigo-site-nav.is-scrolled .indigo-mobile-toggle:hover {
  background:rgb(51 43 57 / .06);
  border-color:rgb(51 43 57 / .12);
}
.indigo-mobile-toggle:focus-visible {
  outline:2px solid currentColor;
  outline-offset:3px;
}
.indigo-mobile-toggle-icon {
  position:relative;
  display:block;
  width:22px;
  height:18px;
}
.indigo-mobile-toggle-line {
  position:absolute;
  left:0;
  top:50%;
  width:22px;
  height:2px;
  margin-top:-1px;
  border-radius:999px;
  background:currentColor;
  transform-origin:center;
  transition:transform 180ms cubic-bezier(.4,0,.2,1),opacity 160ms ease;
}
.indigo-mobile-toggle-line:nth-child(1) { transform:translateY(-7px); }
.indigo-mobile-toggle-line:nth-child(2) { transform:translateY(0); }
.indigo-mobile-toggle-line:nth-child(3) { transform:translateY(7px); }
.indigo-mobile-toggle[aria-expanded="true"] .indigo-mobile-toggle-line:nth-child(1) { transform:rotate(45deg); }
.indigo-mobile-toggle[aria-expanded="true"] .indigo-mobile-toggle-line:nth-child(2) { opacity:0; }
.indigo-mobile-toggle[aria-expanded="true"] .indigo-mobile-toggle-line:nth-child(3) { transform:rotate(-45deg); }
.indigo-mobile-actions {
  display:grid;
  gap:.75rem;
  margin-top:.25rem;
  padding-top:1.25rem;
  border-top:1px solid rgb(51 43 57 / .12);
}
.indigo-mobile-action {
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:.75rem 1.25rem;
  font-size:.875rem;
  font-weight:600;
  letter-spacing:.01em;
  text-decoration:none;
  transition:transform 180ms ease,box-shadow 180ms ease,background-color 180ms ease,border-color 180ms ease;
}
.indigo-mobile-action:hover { transform:translateY(-1px); }
.indigo-mobile-action:focus-visible {
  outline:2px solid #332b39;
  outline-offset:3px;
}
.indigo-mobile-action-secondary {
  border:1px solid rgb(51 43 57 / .2);
  background:rgb(255 255 255 / .7);
  color:#332b39;
}
.indigo-mobile-action-secondary:hover {
  border-color:rgb(51 43 57 / .36);
  background:#fff;
}
.indigo-mobile-action-primary {
  border:1px solid transparent;
  background:var(--primary);
  color:var(--primary-foreground);
  box-shadow:0 12px 30px rgb(51 43 57 / .16);
}
.indigo-mobile-action-primary:hover {
  box-shadow:0 16px 36px rgb(51 43 57 / .22);
}
@media (max-width: 879px) {
  .indigo-mobile-toggle { display:inline-flex; }
  .indigo-mobile-menu.is-open {
    display:flex;
    flex-direction:column;
    gap:0;
    padding:.5rem 1.5rem 1.5rem;
    border-top:1px solid rgb(51 43 57 / .1);
    background:rgb(250 248 246 / .98);
    color:#332b39;
    box-shadow:0 24px 48px rgb(51 43 57 / .14);
    backdrop-filter:blur(14px);
  }
  .indigo-mobile-menu > a {
    width: fit-content;
    display:flex;
    align-items:center;
    min-height:48px;
    border-bottom:1px solid rgb(51 43 57 / .1);
    color:#332b39;
    font-size:.95rem;
    font-weight:500;
    text-decoration:none;
  }
  .indigo-mobile-menu > a:last-of-type { border-bottom:0; }
}
@media (min-width: 560px) and (max-width: 879px) {
  .indigo-mobile-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  .indigo-mobile-toggle-line,.indigo-mobile-action { transition:none; }
}


/* Mobile menu spacing from the approved screenshot */
@media (max-width: 879px) {
  .indigo-mobile-menu.is-open { padding:.5rem 1.5rem 1.25rem; }
  .indigo-mobile-menu > a { min-height:36px; }
  .indigo-mobile-actions {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:.75rem;
    margin-top:.75rem;
    padding-top:1rem;
  }
  .indigo-mobile-action {
    min-width:116px;
    min-height:42px;
    padding:.625rem 1rem;
  }
}


/* Screenshot-matched open mobile header */
@media (max-width: 879px) {
  .indigo-utility { display:none; }
  .indigo-header:has(.indigo-mobile-toggle[aria-expanded="true"]) {
    border-bottom:1px solid rgb(51 43 57 / .08);
    background:rgb(250 248 246 / .98);
    color:#17131a;
  }
  .indigo-header:has(.indigo-mobile-toggle[aria-expanded="true"]) .indigo-logo-dark { opacity:1; }
  .indigo-header:has(.indigo-mobile-toggle[aria-expanded="true"]) .indigo-logo-white { opacity:0; }
  .indigo-mobile-toggle[aria-expanded="true"],
  .indigo-mobile-toggle[aria-expanded="true"]:hover {
    border-color:transparent;
    background:transparent;
    color:#111;
  }
  .indigo-mobile-menu > a { border-bottom:0; }
  .indigo-mobile-actions { border-top:0; }
}


/* Questions CTA buttons: Lovable hover motion */
main > section:nth-of-type(8) .indigo-inner-card a {
  transform: translateY(0);
  transition-property: color, background-color, border-color, transform, box-shadow !important;
  transition-duration: 150ms !important;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
  will-change: transform;
}

main > section:nth-of-type(8) .indigo-inner-card a:hover {
  transform: translateY(-2px) !important;
}


/* Contact section: exact Lovable responsive layout */
#contact {
  padding-top: 96px !important;
  padding-bottom: 96px !important;
}

#contact > div > .grid.gap-8 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 32px !important;
  align-items: stretch !important;
}

#contact form.indigo-inner-card,
#contact > div > .grid.gap-8 > aside {
  border-radius: 32px !important;
  padding: 32px !important;
}

#contact form > .grid {
  gap: 24px !important;
}

#contact form input,
#contact form textarea {
  border-radius: 12px !important;
}

#contact form > label {
  margin-top: 24px !important;
}

#contact form > div:last-child {
  gap: 16px !important;
  padding-top: 8px !important;
}

#contact form button {
  transform: translateY(0);
  transition-property: color, background-color, border-color, transform, box-shadow !important;
  transition-duration: 150ms !important;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
  will-change: transform;
}

#contact form button:hover {
  transform: translateY(-2px) !important;
}

#contact form button > span {
  transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1) !important;
}

#contact form button:hover > span {
  transform: translateX(4px) !important;
}

@media (min-width: 640px) {
  #contact form > .grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #contact form > div:last-child {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
}

@media (min-width: 768px) {
  #contact {
    padding-top: 128px !important;
    padding-bottom: 128px !important;
  }

  #contact > div > .grid.gap-8 {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) !important;
    gap: 40px !important;
  }

  #contact form.indigo-inner-card,
  #contact > div > .grid.gap-8 > aside {
    padding: 40px !important;
  }
}


/* Contact fields: match the Lovable rendered preview */
#contact form input {
  border-radius: 9999px !important;
}

#contact form textarea {
  border-radius: 20px !important;
}


/* Tablet contact form: full-width stacked fields */
@media (min-width: 768px) and (max-width: 1023px) {
  #contact form > .grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #contact form > .grid > label,
  #contact form > .grid input {
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* Reference-matched header styling; media is controlled by section fields. */
main > section:first-child {
  background-image:linear-gradient(90deg, rgb(39 25 51 / .58), rgb(51 43 57 / .28) 58%, rgb(51 43 57 / .14));
  background-position:top 0px center;
  background-size:cover;
}


@media (min-width: 880px) {
  .indigo-site-nav {
    position:fixed;
    top:0;
    right:0;
    left:0;
    z-index:50;
    color:#fff;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  }
  .admin-bar .indigo-site-nav { top:32px; }


  .indigo-utility {
    max-height:40px;
    opacity:1;
    overflow:hidden;
  }
  .indigo-utility > div,
  .indigo-header > div:first-child {
    box-sizing:border-box;
    width:100%;
    max-width:1280px;
    margin-right:auto;
    margin-left:auto;
    padding-right:40px;
    padding-left:40px;
    transform:translateX(-8px);
  }
  .indigo-utility > div {
    display:flex;
    height:40px;
    align-items:center;
    justify-content:flex-end;
    gap:24px;
    color:rgb(255 255 255 / .8);
    font-size:12px;
    font-weight:600;
    line-height:16px;
    letter-spacing:0;
  }
  .indigo-utility a {
    color:inherit;
    text-decoration:none;
  }
  .indigo-utility span { opacity:.3; }

  .indigo-header > div:first-child {
    display:flex;
    height:80px;
    align-items:center;
    justify-content:space-between;
  }
  .indigo-header > div:first-child > a:first-child {
    position:relative;
    display:block;
    flex:0 0 178px;
    width:178px;
    height:54px;
    background:url("./assets/media/logo-white.svg") left center / contain no-repeat;
  }
  .indigo-header > div:first-child > a:first-child img {
    display:none !important;
  }

  .indigo-header nav {
    display:flex !important;
    align-items:center;
    gap:38px !important;
    margin:0;
    padding:0;
    list-style:none;
  }
  .indigo-header nav .menu-item {
    display:block;
    margin:0;
    padding:0;
    list-style:none !important;
  }
  .indigo-header nav .menu-item::marker { content:""; font-size:0; }
  .indigo-header nav .menu-item > a {
    display:block;
    color:rgb(255 255 255 / .9);
    font-size:14px;
    font-weight:600;
    line-height:20px;
    letter-spacing:0;
    text-decoration:none;
    white-space:nowrap;
  }

  .indigo-header > div:first-child > div:last-child {
    display:flex !important;
    align-items:center;
    gap:12px;
  }
  .indigo-header .indigo-outline,
  .indigo-header .indigo-header-cta {
    box-sizing:border-box;
    display:inline-flex;
    min-height:42px;
    align-items:center;
    justify-content:center;
    border-radius:9999px;
    padding:0 20px;
    font-size:14px;
    font-weight:600;
    line-height:20px;
    letter-spacing:0;
    text-decoration:none;
    white-space:nowrap;
  }
  .indigo-header .indigo-outline {
    min-width:94px;
    border:1px solid rgb(255 255 255 / .45);
    color:#fff;
    background:transparent;
  }
  .indigo-header .indigo-header-cta {
    min-width:132px;
    border:1px solid transparent;
    color:#fff;
    background:#460096;
    box-shadow:none;
  }

  .indigo-site-nav.is-scrolled {
    background:rgb(250 248 246 / .9);
  }
  .indigo-site-nav.is-scrolled .indigo-header > div:first-child > a:first-child {
    background-image:url("/wp-content/uploads/2026/07/indigo-logo.png");
  }
}


/* Desktop header matched to the approved real design */
@media (min-width: 880px) {
  .indigo-header nav { gap:2rem; }
  .indigo-header nav .menu-item {
    display:block;
    margin:0;
    padding:0;
    list-style:none !important;
  }
  .indigo-header nav .menu-item::marker {
    content:"" !important;
    font-size:0;
  }
  .indigo-header nav .menu-item::before {
    display:none !important;
    content:none !important;
  }
  .indigo-header nav .menu-item > a {
    font-family:"Inter",ui-sans-serif,system-ui,sans-serif;
    font-size:.875rem;
    font-weight:600;
    line-height:1.25rem;
    letter-spacing:0;
    color:rgb(255 255 255 / .95);
    text-decoration:none;
  }
  .indigo-header nav .menu-item > a:hover { color:#fff; }
  .indigo-site-nav.is-scrolled .indigo-header nav .menu-item > a { color:rgb(51 43 57 / .82); }
  .indigo-header .indigo-outline,
  .indigo-header .indigo-header-cta {
    font-family:"Inter",ui-sans-serif,system-ui,sans-serif;
    font-size:.875rem;
    font-weight:600;
  }
  .indigo-utility a {
    font-family:"Inter",ui-sans-serif,system-ui,sans-serif;
    font-size:.75rem;
    font-weight:500;
  }
}
#contact aside.indigo-inner-card {
  background: linear-gradient(135deg, rgb(234 197 177 / .25), rgb(196 161 192 / .30) 55%, rgb(149 134 180 / .25)), var(--gradient-sunset-subtle) !important;
  background-blend-mode: soft-light !important;
  color: var(--foreground) !important;
  border: 1px solid color-mix(in srgb, var(--border) 40%, transparent) !important;
}

/* Keep legacy inner-page CTA rows visually identical to the shared card. */
#contact aside.indigo-inner-card.bg-gradient-primary,
.indigo-section#contact aside.indigo-inner-card.bg-gradient-primary {
  background: linear-gradient(135deg, rgb(234 197 177 / .25), rgb(196 161 192 / .30) 55%, rgb(149 134 180 / .25)), var(--gradient-sunset-subtle) !important;
  background-blend-mode: soft-light !important;
  color: var(--foreground) !important;
  border: 1px solid color-mix(in srgb, var(--border) 40%, transparent) !important;
}

#contact aside.indigo-inner-card > p:first-child {
  color: color-mix(in srgb, var(--primary) 70%, transparent) !important;
  opacity: 1 !important;
}

#contact aside.indigo-inner-card > h3 {
  color: var(--foreground) !important;
}

#contact aside.indigo-inner-card > h3 + p {
  color: color-mix(in srgb, var(--foreground) 75%, transparent) !important;
  opacity: 1 !important;
}

/* Section background choices must take visual priority over template media and gradients. */
.indigo-section:is(.indigo-bg-light, .indigo-bg-sand, .indigo-bg-lavender, .indigo-bg-dark, .indigo-bg-custom) {
  background-image: none !important;
}
.indigo-section:is(.indigo-bg-light, .indigo-bg-sand, .indigo-bg-lavender, .indigo-bg-dark, .indigo-bg-custom) > .absolute.inset-0 {
  display: none !important;
}
