/* KIN living-garden refinement */
.intro__copy,
.microcopy,
.stage-center,
.wisdom-line {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.9), 0 0 12px rgba(255,253,245,.85);
}

.card-cloud { z-index: 4; }

.business-card[data-plan="seed"],
.surprise-card[data-plan="seed"] {
  color: #17333c;
  background:
    linear-gradient(145deg, rgba(255,255,255,.82), transparent 45%),
    linear-gradient(135deg, #f4f3ee 0%, #deded8 58%, #c9cbc7 100%);
  border: 1px solid rgba(23,51,60,.34);
  box-shadow: 0 15px 32px rgba(15,37,47,.16), 0 0 0 1px rgba(255,255,255,.62) inset;
  filter: grayscale(1) contrast(1.04);
}

.surprise-card:not([data-plan="seed"]) {
  border: 1px solid rgba(255,255,255,.5);
  filter: saturate(1.12) contrast(1.04);
  box-shadow: 0 25px 65px rgba(7,28,38,.4), 0 0 28px rgba(255,226,139,.24);
}

.surprise-card:not([data-plan="seed"])::after {
  opacity: .2;
}

.focus-sign {
  position: absolute;
  left: -4%;
  top: -25%;
  z-index: 14;
  width: 9.5rem;
  margin: 0;
  display: grid;
  justify-items: center;
  color: var(--ink);
  filter: drop-shadow(0 8px 16px rgba(11,43,53,.18));
  pointer-events: none;
}

.focus-sign[hidden] { display: none; }
.focus-sign.is-changing { animation: focus-arrive .62s cubic-bezier(.2,.8,.2,1) both; }
.focus-sign__symbol { width: 8rem; height: 8rem; overflow: visible; }
.focus-sign__ring,
.focus-sign__path { fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.focus-sign__ring { stroke-dasharray: 4 9; opacity: .72; transform-origin: center; animation: focus-orbit 18s linear infinite; }
.focus-sign__path { stroke-width: 2.5; stroke-dasharray: 900; stroke-dashoffset: 900; animation: focus-draw 1.25s ease forwards; }
.focus-sign__star { animation: focus-pulse 2.6s ease-in-out infinite; }
.focus-sign__center { transform-origin: center; animation: focus-pulse 3.2s ease-in-out infinite; }
.focus-sign figcaption { margin-top: -.45rem; font: 700 .78rem/1.1 Georgia, serif; letter-spacing: .24em; text-transform: uppercase; text-shadow: 0 1px 10px rgba(255,255,255,.9); }

.wisdom-line {
  left: auto;
  right: -9%;
}

.business-card[data-plan="seed"]::before,
.surprise-card[data-plan="seed"]::before {
  opacity: .34;
}

.business-card[data-plan="seed"] .business-card__body small,
.business-card[data-plan="seed"] .business-card__body em,
.business-card[data-plan="seed"] .business-card__link,
.surprise-card[data-plan="seed"] .business-card__body small,
.surprise-card[data-plan="seed"] .business-card__body em,
.surprise-card[data-plan="seed"] .business-card__link {
  opacity: .9;
}

.business-card[data-plan="seed"] .business-card__seed {
  background: rgba(255,255,255,.42);
  border-color: rgba(16,47,58,.45);
  opacity: .92;
}

.business-card__supporter {
  position: absolute;
  left: .65rem;
  top: .55rem;
  z-index: 5;
  padding: .22rem .4rem;
  border: 1px solid rgba(255,241,181,.88);
  border-radius: 999px;
  color: #3a2b0c;
  background: linear-gradient(135deg, #fff0ad, #d7a83b);
  box-shadow: 0 3px 11px rgba(63,43,6,.22);
  font-size: .46rem;
  font-weight: 850;
  letter-spacing: .055em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.business-card[data-plan="seed"] .business-card__supporter,
.surprise-card[data-plan="seed"] .business-card__supporter {
  top: 1.85rem;
}

.business-card[data-supporter="true"]:not([data-plan="seed"]),
.surprise-card[data-supporter="true"]:not([data-plan="seed"]) {
  box-shadow: 0 20px 45px rgba(15,37,47,.27), 0 0 0 2px rgba(238,193,83,.78), 0 0 24px rgba(238,193,83,.32);
}

.living-growth {
  position: absolute;
  inset: 0;
  z-index: 2;
  overflow: hidden;
  pointer-events: none;
}

.living-growth::after {
  content: "";
  position: absolute;
  left: 4%;
  right: 4%;
  bottom: -8%;
  height: 33%;
  border-radius: 50%;
  opacity: var(--garden-glow-opacity, .08);
  background: radial-gradient(ellipse, rgba(23,108,80,.42), rgba(23,108,80,0) 70%);
  filter: blur(9px);
  transition: opacity 1.2s ease;
}

.world__painting {
  filter: saturate(var(--garden-saturation, 1)) brightness(var(--garden-brightness, 1)) contrast(var(--garden-contrast, 1));
  transform: scale(var(--garden-scale, 1.015));
  transition: filter 1.4s ease, transform 1.8s cubic-bezier(.18,.75,.22,1);
}

.world__wash {
  opacity: var(--garden-wash-opacity, 1);
  transition: opacity 1.5s ease;
}

.background-growth {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.background-growth::after {
  content: "";
  position: absolute;
  inset: 36% -8% -18%;
  opacity: var(--background-haze-opacity, .05);
  background:
    radial-gradient(ellipse at 18% 100%, rgba(22,108,73,.52), transparent 44%),
    radial-gradient(ellipse at 82% 100%, rgba(35,125,87,.48), transparent 46%),
    linear-gradient(0deg, rgba(28,105,71,.28), transparent 72%);
  filter: blur(12px);
  transform: scaleY(calc(.68 + var(--garden-density, 0) * .32));
  transform-origin: 50% 100%;
  transition: opacity 1.5s ease, transform 1.8s cubic-bezier(.18,.75,.22,1);
}

.background-growth .living-plant {
  opacity: var(--background-garden-opacity, .2);
  filter: drop-shadow(0 8px 8px rgba(8,43,36,.16));
}

.background-growth .living-plant__stem {
  width: 2.5px;
}

.background-growth .living-plant__leaf {
  width: 22px;
  height: 10px;
}

.living-plant {
  position: absolute;
  left: var(--plant-x);
  bottom: var(--plant-bottom);
  width: 34px;
  height: var(--plant-height);
  opacity: var(--garden-opacity, .5);
  transform: translateX(-50%) rotate(var(--plant-lean));
  transform-origin: 50% 100%;
  filter: drop-shadow(0 5px 5px rgba(8,43,36,.12));
  transition: opacity .8s ease;
}

.living-plant__stem {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 2px;
  height: 100%;
  border-radius: 99px;
  transform: translateX(-50%);
  transform-origin: 50% 100%;
  background: linear-gradient(#4e9877, #1d684f);
}

.living-plant__leaf {
  position: absolute;
  width: 17px;
  height: 8px;
  bottom: 34%;
  background: linear-gradient(135deg, #65aa7e, #287253);
  transform-origin: 100% 50%;
  border-radius: 100% 0 100% 0;
}

.living-plant__leaf--left {
  right: 50%;
  transform: rotate(19deg);
}

.living-plant__leaf--right {
  left: 50%;
  bottom: 55%;
  transform-origin: 0 50%;
  transform: scaleX(-1) rotate(18deg);
}

.living-plant__bloom {
  position: absolute;
  left: 50%;
  top: -3px;
  width: 13px;
  height: 13px;
  border-radius: 60% 40% 62% 38%;
  background: radial-gradient(circle at 45% 48%, #f4ca72 0 18%, #e47b67 22% 58%, #b94d55 61%);
  transform: translateX(-50%) rotate(22deg);
  box-shadow: -5px 3px 0 -2px rgba(238,157,102,.82), 5px 4px 0 -2px rgba(220,105,96,.72);
}

.living-plant--1 .living-plant__stem { background: linear-gradient(#669e7e, #315f4d); }
.living-plant--1 .living-plant__leaf { width: 21px; background: linear-gradient(135deg, #86b58a, #347258); }
.living-plant--2 { width: 25px; }
.living-plant--2 .living-plant__leaf { width: 12px; height: 12px; border-radius: 100% 0; }
.living-plant--3 .living-plant__stem { width: 1px; background: #517c68; }
.living-plant--3 .living-plant__leaf { width: 20px; height: 5px; background: #6b9578; }
.living-plant--4 .living-plant__stem { width: 3px; background: linear-gradient(#78a784, #245f49); }
.living-plant--4 .living-plant__leaf { width: 15px; height: 10px; }

.living-plant.is-growing .living-plant__stem {
  animation: kin-stem-grow 1.15s cubic-bezier(.18,.75,.22,1) var(--plant-delay) both;
}

.living-plant.is-growing .living-plant__leaf {
  animation: kin-leaf-open .72s cubic-bezier(.18,.75,.22,1) calc(var(--plant-delay) + .58s) both;
}

.living-plant.is-growing .living-plant__bloom {
  animation: kin-bloom-open .65s cubic-bezier(.18,.75,.22,1) calc(var(--plant-delay) + 1s) both;
}

.living-growth.is-awakening,
.background-growth.is-awakening {
  animation: kin-garden-breathe 1.75s ease both;
}

.nature-sound-toggle {
  position: absolute;
  right: 1%;
  bottom: 1%;
  z-index: 13;
  border: 0;
  padding: .38rem .55rem;
  color: rgba(16,47,58,.72);
  background: transparent;
  cursor: pointer;
  font-size: .61rem;
  font-weight: 720;
  letter-spacing: .035em;
  text-shadow: 0 1px white;
}

.nature-sound-toggle:hover,
.nature-sound-toggle:focus-visible {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}

@keyframes kin-stem-grow {
  from { transform: translateX(-50%) scaleY(0); opacity: .15; }
  to { transform: translateX(-50%) scaleY(1); opacity: 1; }
}

@keyframes kin-leaf-open {
  from { opacity: 0; scale: .12; }
  to { opacity: 1; scale: 1; }
}

@keyframes kin-bloom-open {
  from { opacity: 0; transform: translateX(-50%) rotate(22deg) scale(.08); }
  to { opacity: 1; transform: translateX(-50%) rotate(22deg) scale(1); }
}

@keyframes kin-garden-breathe {
  0% { filter: saturate(.85); }
  52% { filter: saturate(1.28) brightness(1.06); }
  100% { filter: saturate(1); }
}

@keyframes focus-arrive { from { opacity: 0; transform: translateY(8px) scale(.86); } }
@keyframes focus-draw { to { stroke-dashoffset: 0; } }
@keyframes focus-orbit { to { transform: rotate(360deg); } }
@keyframes focus-pulse { 50% { transform: scale(1.55); opacity: .62; } }

@media (max-width: 680px) {
  .intro__copy,
  .microcopy,
  .stage-center,
  .wisdom-line {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }

  .nature-sound-toggle {
    right: 4%;
    bottom: .4%;
  }

  .focus-sign {
    left: 3%;
    top: -7%;
    width: 7.4rem;
  }

  .focus-sign__symbol {
    width: 6.5rem;
    height: 6.5rem;
  }

  .wisdom-line {
    left: auto;
    right: 3%;
    width: min(17rem, 62%);
    transform: none;
  }

  .living-plant {
    opacity: var(--garden-mobile-opacity, .42);
  }

  .background-growth .living-plant {
    opacity: calc(var(--background-garden-opacity, .2) * .78);
  }
}

@media (prefers-reduced-motion: reduce) {
  .living-plant.is-growing .living-plant__stem,
  .living-plant.is-growing .living-plant__leaf,
  .living-plant.is-growing .living-plant__bloom,
  .living-growth.is-awakening,
  .background-growth.is-awakening {
    animation-duration: .01ms !important;
  }
}


/* Founding Seed: private preview + one invitation */
.business-card[data-founding="true"],
.surprise-card[data-founding="true"] {
  box-shadow:
    0 17px 38px rgba(15,37,47,.18),
    0 0 0 2px rgba(184,145,55,.62),
    0 0 24px rgba(222,190,105,.2);
}

.business-card[data-founding="true"] .business-card__seed,
.founding-preview-card .business-card__seed {
  display: block;
  border-color: rgba(115,83,25,.58);
  background: rgba(255,247,217,.64);
  color: #60491c;
  letter-spacing: .075em;
}

.founding-invite-banner {
  position: relative;
  z-index: 19;
  width: min(920px, calc(100% - 2rem));
  margin: -.25rem auto .45rem;
  padding: .78rem .9rem .78rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid rgba(255,255,255,.74);
  border-radius: 1.1rem;
  background: rgba(255,253,245,.72);
  box-shadow: 0 12px 38px rgba(15,38,47,.12);
  backdrop-filter: blur(14px);
}

.founding-invite-banner div {
  display: grid;
  gap: .12rem;
}

.founding-invite-banner span {
  color: #826320;
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .16em;
}

.founding-invite-banner strong {
  font: 1.02rem/1.15 Georgia, serif;
  font-weight: 400;
}

.founding-invite-banner small {
  color: var(--ink-soft);
  font-size: .72rem;
  line-height: 1.35;
}

.founding-invite-banner button {
  flex: 0 0 auto;
  border: 0;
  border-radius: 999px;
  padding: .68rem .9rem;
  background: var(--ink);
  color: white;
  cursor: pointer;
  font-size: .72rem;
  font-weight: 800;
}

.founding-invite-banner button:hover {
  background: var(--teal);
}

.founding-preview-dialog {
  width: min(94vw, 680px);
}

.founding-preview-panel {
  text-align: center;
}

.founding-preview-mount {
  min-height: 12rem;
  margin: 1.35rem 0 1.1rem;
  display: grid;
  place-items: center;
}

.founding-preview-card {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: min(22rem, 82vw) !important;
  margin: auto;
  transform: rotate(-1deg) !important;
  text-align: left;
}

.founding-preview-card:hover,
.founding-preview-card:focus-visible {
  transform: rotate(0) scale(1.025) !important;
}

.founding-preview-card .business-card__seed {
  position: absolute;
  left: .72rem;
  top: .62rem;
}

.founding-preview-actions {
  display: grid;
  justify-items: center;
  gap: .3rem;
}

.founding-invite-box {
  margin-top: 1.4rem;
  padding: 1.15rem;
  border: 1px solid rgba(130,99,32,.25);
  border-radius: 1rem;
  background: linear-gradient(145deg, rgba(255,249,224,.82), rgba(245,241,223,.64));
  text-align: left;
}

.founding-invite-box[hidden] {
  display: none;
}

.founding-invite-box .eyebrow {
  margin-bottom: .45rem;
  color: #826320;
}

.founding-invite-box h3 {
  margin: 0;
  font: 1.55rem/1 Georgia, serif;
  font-weight: 400;
}

.founding-invite-box p:not(.eyebrow) {
  margin: .65rem 0 .9rem;
  color: var(--ink-soft);
  font-size: .8rem;
  line-height: 1.45;
}

.founding-copy-row {
  display: flex;
  align-items: center;
  gap: .5rem;
}

.founding-copy-row input {
  min-width: 0;
  flex: 1;
  border: 1px solid var(--line);
  border-radius: .7rem;
  padding: .7rem .75rem;
  background: rgba(255,255,255,.86);
  color: var(--ink);
  font-size: .68rem;
}

.founding-copy-row .quiet-button {
  flex: 0 0 auto;
  white-space: nowrap;
}

@media (max-width: 680px) {
  .founding-invite-banner {
    width: calc(100% - 1.25rem);
    align-items: stretch;
    flex-direction: column;
    margin-top: 0;
  }

  .founding-invite-banner button {
    width: 100%;
  }

  .founding-preview-mount {
    min-height: 10rem;
  }

  .founding-copy-row {
    align-items: stretch;
    flex-direction: column;
  }

  .founding-copy-row .quiet-button {
    display: block;
    width: 100%;
  }
}


.founding-invite-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
}

.founding-invite-topline .eyebrow {
  margin: 0;
}

.founding-invite-count {
  flex: 0 0 auto;
  padding: .28rem .5rem;
  border: 1px solid rgba(130,99,32,.3);
  border-radius: 999px;
  background: rgba(255,255,255,.52);
  color: #74581b;
  font-size: .61rem;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.founding-invite-prompt {
  margin: -.15rem 0 .9rem !important;
  color: #6d531b !important;
  font-family: Georgia, serif;
  font-size: .95rem !important;
  font-style: italic;
}

.founding-share-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .55rem;
  margin-top: .7rem;
}

.founding-share-button {
  grid-column: 1 / -1;
  background: linear-gradient(135deg, #173a43, #0c6970);
  box-shadow: 0 10px 28px rgba(12,105,112,.2);
}

.founding-share-actions .quiet-button,
.founding-share-actions .text-button {
  margin: 0;
  min-height: 2.65rem;
}

.founding-share-actions .text-button {
  display: inline-grid;
  place-items: center;
}

.founding-invite-fineprint {
  margin: .7rem 0 0 !important;
  color: #7b6d51 !important;
  font-size: .68rem !important;
  text-align: center;
}

@media (max-width: 680px) {
  .founding-share-actions {
    grid-template-columns: 1fr;
  }

  .founding-share-button {
    grid-column: 1;
  }

  .founding-invite-topline {
    align-items: flex-start;
  }
}


/* Demo cards remain as gentle placeholders until enough real cards arrive. */
.business-card__demo {
  position: absolute;
  right: .68rem;
  top: .62rem;
  z-index: 3;
  padding: .2rem .38rem;
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 999px;
  background: rgba(14,47,57,.46);
  color: rgba(255,255,255,.92);
  font-size: .52rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}

.business-card.card--cream .business-card__demo,
.business-card.card--ochre .business-card__demo,
.business-card.card--green .business-card__demo {
  border-color: rgba(23,51,60,.2);
  background: rgba(255,255,255,.58);
  color: rgba(23,51,60,.72);
}

.business-card[data-demo="true"] {
  opacity: .9;
}

.business-card[data-demo="true"]:hover,
.business-card[data-demo="true"]:focus-visible {
  opacity: 1;
}
