

/* ==== inline style blocks from original ==== */

main > section:nth-of-type(3) { overflow: hidden; }
.sat-pages-shell {
  width: 100%;
  background: transparent;
}
.sat-pages {
  --sat-doc-w: clamp(235px, 60vw, 330px);
  position: relative;
  height: clamp(350px, 72vw, 430px);
  max-width: 58.75rem;
  margin: 0 auto;
  perspective: 1200px;
  overflow: visible;
  isolation: isolate;
}
.sat-pages-track {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: visible;
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
}
.sat-pages-nav {
  position: absolute;
  top: 50%;
  z-index: 12;
  display: flex;
  width: 2.375rem;
  height: 2.375rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(99, 55, 145, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .88);
  color: var(--sat-purple-dark, #1b5e20);
  box-shadow: 0 12px 26px rgba(45, 25, 78, .14);
  cursor: pointer;
  backdrop-filter: blur(10px);
  transform: translateY(-50%);
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
}
.sat-pages-nav span {
  margin-top: -.125rem;
  font-family: Georgia, serif;
  font-size: 1.65rem;
  line-height: 1;
}
.sat-pages-nav--prev { left: clamp(.5rem, 4vw, 2.125rem); }
.sat-pages-nav--next { right: clamp(.5rem, 4vw, 2.125rem); }
.sat-pages-nav:hover,
.sat-pages-nav:focus-visible {
  background: #fff;
  color: var(--sat-purple, #2e7d32);
  box-shadow: 0 16px 34px rgba(45, 25, 78, .2);
  outline: none;
  transform: translateY(-50%) scale(1.04);
}
.sat-pages-nav:active { transform: translateY(-50%) scale(.96); }
.sat-page-doc {
  position: absolute;
  top: 0;
  left: 50%;
  width: var(--sat-doc-w);
  aspect-ratio: 900 / 1163;
  overflow: hidden;
  border: 1px solid #d4edda;
  border-radius: .875rem;
  background: #fff;
  box-shadow: 0 20px 42px -12px rgba(40, 20, 80, .28), 0 8px 18px -10px rgba(40, 20, 80, .18);
  cursor: pointer;
  transform-origin: center center;
  transition: transform .58s cubic-bezier(.22, .61, .36, 1), opacity .42s ease, filter .42s ease, box-shadow .42s ease;
  will-change: transform, opacity;
  backface-visibility: hidden;
}
.sat-page-doc img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}
.sat-page-doc.pos-active {
  z-index: 5;
  opacity: 1;
  filter: none;
  transform: translateX(-50%) translateZ(0) scale(1);
  box-shadow: 0 24px 52px -12px rgba(40, 20, 80, .34), 0 12px 24px -12px rgba(40, 20, 80, .22);
}
.sat-page-doc.pos-left-1 {
  z-index: 4;
  opacity: .86;
  filter: saturate(.94);
  transform: translateX(calc(-50% - clamp(74px, 18vw, 118px))) translateZ(-80px) rotateY(14deg) scale(.92);
}
.sat-page-doc.pos-right-1 {
  z-index: 4;
  opacity: .86;
  filter: saturate(.94);
  transform: translateX(calc(-50% + clamp(74px, 18vw, 118px))) translateZ(-80px) rotateY(-14deg) scale(.92);
}
.sat-page-doc.pos-left-2 {
  z-index: 3;
  opacity: .52;
  filter: saturate(.88);
  transform: translateX(calc(-50% - clamp(132px, 34vw, 218px))) translateZ(-165px) rotateY(22deg) scale(.82);
}
.sat-page-doc.pos-right-2 {
  z-index: 3;
  opacity: .52;
  filter: saturate(.88);
  transform: translateX(calc(-50% + clamp(132px, 34vw, 218px))) translateZ(-165px) rotateY(-22deg) scale(.82);
}
.sat-page-doc.pos-hidden {
  z-index: 1;
  opacity: 0;
  filter: blur(1px);
  pointer-events: none;
  transform: translateX(-50%) translateZ(-220px) scale(.72);
}
.sat-pages {
  --sat-doc-w: clamp(220px, 68vw, 282px);
  height: clamp(300px, 92vw, 365px);
}
.sat-pages-nav { width: 2.125rem; height: 2.125rem; }
.sat-pages-nav span { font-size: 1.45rem; }
.sat-pages-nav--prev { left: .1875rem; }
.sat-pages-nav--next { right: .1875rem; }
.sat-pages-shell > ul { margin-top: 1.25rem; }
@media (min-width: 640px) {
  .sat-pages {
    --sat-doc-w: clamp(235px, 60vw, 330px);
    height: clamp(350px, 72vw, 430px);
  }
  .sat-pages-nav { width: 2.375rem; height: 2.375rem; }
  .sat-pages-nav span { font-size: 1.65rem; }
  .sat-pages-nav--prev { left: clamp(.5rem, 4vw, 2.125rem); }
  .sat-pages-nav--next { right: clamp(.5rem, 4vw, 2.125rem); }
  .sat-pages-shell > ul { margin-top: 1.75rem; }
}
@media (prefers-reduced-motion: reduce) {
  .sat-page-doc { transition: none; }
}



.sat-second-fold-stage { margin-top: 9rem !important; }
.sat-second-fold-card { padding-top: 30% !important; }
@media (min-width: 640px) {
  .sat-second-fold-stage { margin-top: 12rem !important; }
  .sat-second-fold-card { padding-top: 42% !important; }
}



.sat-google-section {
  overflow: hidden;
  padding: 3rem 1rem;
  background: #fff;
}
.sat-google-summary {
  display: flex;
  max-width: 72rem;
  margin: 0 auto 2rem;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: .5rem .75rem;
}
.sat-google-logo { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; }
.sat-google-summary > .sat-google-logo { width: 4rem; height: 4rem; }
.sat-google-excellent { color: #0f172a; font-size: 1.25rem; font-weight: 700; }
.sat-google-summary-stars,
.sat-google-stars { display: flex; gap: .125rem; }
.sat-google-star { color: #facc15; font-size: 1.25rem; line-height: 1; }
.sat-google-score { color: #0f172a; font-size: 1rem; font-weight: 600; }
.sat-google-rows { display: grid; gap: 1rem; }
.sat-google-viewport {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.sat-google-viewport::-webkit-scrollbar { display: none; }
.sat-google-track {
  display: flex;
  width: max-content;
  gap: 1rem;
}

.sat-google-card {
  display: flex;
  width: 280px;
  flex: 0 0 auto;
  flex-direction: column;
  gap: .75rem;
  padding: 1rem;
  border: 1px solid #e2e8f0;
  border-radius: .75rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .05);
}
.sat-google-card-head,
.sat-google-person { display: flex; align-items: flex-start; }
.sat-google-card-head { justify-content: space-between; gap: .75rem; }
.sat-google-person { min-width: 0; align-items: center; gap: .75rem; }
.sat-google-avatar {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  flex: 0 0 auto;
  border-radius: 999px;
  object-fit: cover;
}
.sat-google-initial {
  display: grid;
  place-items: center;
  color: #fff;
  font-weight: 600;
}
.sat-google-meta { min-width: 0; }
.sat-google-meta h3 {
  overflow: hidden;
  color: #0f172a;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sat-google-meta p { margin-top: .125rem; color: #64748b; font-size: .75rem; }
.sat-google-stars .sat-google-star { font-size: 1rem; }
.sat-google-copy { color: #334155; font-size: .875rem; line-height: 1.625; }
@media (min-width: 640px) {
  .sat-google-section { padding-top: 4rem; padding-bottom: 4rem; }
  .sat-google-summary { margin-bottom: 2.5rem; }
  .sat-google-summary > .sat-google-logo { width: 5rem; height: 5rem; }
  .sat-google-excellent { font-size: 1.5rem; }
  .sat-google-score { font-size: 1.125rem; }
  .sat-google-card { width: 340px; padding: 1.25rem; }
}



:root {
  --sat-ink: #1b5e20;
  --sat-ink-soft: #4a6b4a;
  --sat-purple: #2e7d32;
  --sat-purple-dark: #1b5e20;
  --sat-purple-pale: #e8f5e9;
  --sat-paper: #fffdf9;
  --sat-line: #d4edda;
  --sat-green: #20b860;
}
html { scroll-behavior: smooth; }
body {
  background: var(--sat-paper);
  color: var(--sat-ink);
  font-family: Montserrat, Arial, sans-serif !important;
  font-weight: 500;
}
.font-serif,
main h1,
main h2,
main h3 { font-family: Montserrat, Arial, sans-serif !important; }
main h2 {
  color: var(--sat-ink) !important;
  font-weight: 900 !important;
  letter-spacing: -.035em !important;
  text-transform: uppercase;
}
main h3 { color: var(--sat-ink); }
main h2 span {
  color: var(--sat-purple) !important;
  -webkit-text-fill-color: currentColor !important;
  font-style: normal !important;
  text-shadow: none !important;
}
.gradient-bar {
  width: 3.25rem !important;
  height: .25rem !important;
  border-radius: 0 !important;
  background: var(--sat-purple) !important;
}
.gradient-cta {
  border: 1px solid #10793a !important;
  border-radius: .75rem !important;
  background: #168a45 !important;
  box-shadow: 0 10px 24px rgba(22, 138, 69, .18) !important;
  font-size: 1.125rem !important;
  font-weight: 800 !important;
  letter-spacing: .025em !important;
  transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease !important;
}
.gradient-cta:hover {
  background: #10793a !important;
  box-shadow: 0 12px 26px rgba(16, 121, 58, .24) !important;
  transform: translateY(-1px);
}
.gradient-icon-green {
  border-radius: .75rem !important;
  background: var(--sat-purple) !important;
  box-shadow: none !important;
}
.gradient-premium-badge {
  border-radius: .5rem !important;
  background: var(--sat-purple) !important;
  box-shadow: none !important;
}
.premium-card {
  border: 2px solid var(--sat-purple) !important;
  background: #fff !important;
  box-shadow: 0 18px 45px rgba(75, 31, 114, .13) !important;
}

/* Hero: same composition, with the heavier visual language used by 500 OT and NAP. */
main > section:nth-of-type(1) {
  background: #f0f9f0 !important;
}
main > section:nth-of-type(1) > div {
  max-width: 56rem !important;
}
main > section:nth-of-type(1) h1 {
  color: var(--sat-ink) !important;
  font-weight: 900 !important;
  letter-spacing: -.055em !important;
}
main > section:nth-of-type(1) h1 .sat-hero-line {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: .18em;
  white-space: nowrap;
}
main > section:nth-of-type(1) h1 .sat-hero-accent {
  padding-right: .16em !important;
  padding-left: .16em !important;
}
main > section:nth-of-type(1) h1 span {
  -webkit-text-fill-color: currentColor !important;
  text-shadow: none !important;
}
main > section:nth-of-type(1) h1 span:nth-of-type(2),
main > section:nth-of-type(1) h1 span:last-of-type {
  color: var(--sat-purple) !important;
}
main > section:nth-of-type(1) h1 + p {
  color: #4a6b4a !important;
  font-family: Montserrat, Arial, sans-serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: -.015em;
}
main > section:nth-of-type(1) h1 + p + p {
  color: var(--sat-purple-dark) !important;
  font-family: Montserrat, Arial, sans-serif !important;
  font-weight: 800 !important;
}
main > section:nth-of-type(1) .space-y-1 {
  color: #4a6b4a !important;
  font-size: .9rem;
  font-weight: 600;
}
main > section:nth-of-type(1) .inline-flex.bg-white {
  min-width: 7.35rem;
  justify-content: center;
  border: 1px solid #d4edda !important;
  border-radius: .65rem !important;
  background: rgba(255, 255, 255, .72) !important;
  box-shadow: none !important;
  font-size: .8rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .03em;
}
main > section:nth-of-type(1) .sat-hero-steps {
  width: 100%;
  flex-wrap: nowrap !important;
}
main > section:nth-of-type(1) .sat-hero-steps > div {
  min-width: 0;
  flex-wrap: nowrap;
}
main > section:nth-of-type(1) .absolute.-inset-4 {
  display: none !important;
}
main > section:nth-of-type(1) h2 {
  font-size: clamp(1.1rem, 2.4vw, 1.35rem) !important;
  letter-spacing: -.02em !important;
  text-transform: none;
}
/* Kit overview and the four category cards. */
main > section:nth-of-type(2) { background: #fff !important; }
main > section:nth-of-type(2) .sat-second-fold-card {
  border: 1px solid rgba(255, 255, 255, .12) !important;
  border-radius: 1.25rem !important;
  background: var(--sat-purple-dark) !important;
  box-shadow: 0 18px 40px rgba(75, 31, 114, .18) !important;
}
main > section:nth-of-type(2) .grid.grid-cols-2 > div {
  border: 1px solid #d4edda !important;
  border-radius: .8rem !important;
  background: #f0f9f0 !important;
  box-shadow: none !important;
}
main > section:nth-of-type(2) .grid.grid-cols-2 > div > div:first-child {
  background: #fff !important;
  padding: 0 !important;
}
main > section:nth-of-type(2) .grid.grid-cols-2 > div > div:first-child img {
  aspect-ratio: 16 / 11 !important;
}
@media (max-width: 639px) {
  main > section:nth-of-type(2) .grid.grid-cols-2 {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
  main > section:nth-of-type(2) .grid.grid-cols-2 > div > div:first-child {
    padding: .5rem !important;
  }
  main > section:nth-of-type(2) .grid.grid-cols-2 > div > div:first-child img {
    aspect-ratio: 16 / 10 !important;
  }
}


/* Product pages preview. The fanned carousel itself lives in #sat-fanned-page-carousel. */
main > section:nth-of-type(3) { background: #f0f9f0 !important; }

/* Audience cards. */
main > section:nth-of-type(4) { background: #fff !important; }
main > section:nth-of-type(4) .grid > div {
  border: 1px solid var(--sat-line) !important;
  border-radius: .85rem !important;
  box-shadow: none !important;
}
main > section:nth-of-type(4) h3 {
  font-weight: 800;
  letter-spacing: -.02em;
}

/* Objections: each doubt and response reads as a compact conversation. */
main > section:nth-of-type(4) {
  padding-bottom: 2rem !important;
}
.sat-objections-section {
  padding-top: 1.25rem !important;
  background: #fff !important;
}
.sat-objections-list {
  display: flex;
  flex-direction: column;
  gap: 1.35rem;
}
.sat-objection-card {
  display: flex;
  flex-direction: column;
  gap: .65rem;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.sat-objection-question,
.sat-objection-answer {
  position: relative;
  margin-top: 0 !important;
  line-height: 1.55 !important;
  box-shadow: 0 10px 26px rgba(55, 28, 75, .1);
}
.sat-objection-question {
  width: min(88%, 40rem);
  padding: 1rem 1.25rem 1rem 3.75rem;
  border: 1px solid var(--sat-purple-dark);
  border-radius: 1.1rem 1.1rem 1.1rem .35rem;
  background: var(--sat-purple-dark);
  color: #fff !important;
  font-weight: 800 !important;
  letter-spacing: -.015em;
}
.sat-objection-question::before {
  content: "...";
  position: absolute;
  top: 50%;
  left: 1rem;
  display: flex;
  width: 1.85rem;
  height: 1.85rem;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: .6rem .6rem .6rem .2rem;
  background: rgba(255, 255, 255, .13);
  color: #fff;
  font-size: .8rem;
  letter-spacing: .06em;
  line-height: 1;
  transform: translateY(-50%);
}
.sat-objection-question::after {
  content: "";
  position: absolute;
  bottom: -.48rem;
  left: 1.25rem;
  width: .9rem;
  height: .9rem;
  background: var(--sat-purple-dark);
  clip-path: polygon(0 0, 100% 0, 0 100%);
}
.sat-objection-answer {
  width: min(94%, 43rem);
  margin-left: auto;
  padding: 1rem 1.25rem;
  border: 1px solid #d4edda;
  border-radius: 1.1rem 1.1rem .35rem 1.1rem;
  background: #f0f9f0;
  color: #3d5c3d !important;
  font-weight: 600 !important;
}
.sat-objection-answer::after {
  content: "";
  position: absolute;
  right: 1.25rem;
  bottom: -.48rem;
  width: .9rem;
  height: .9rem;
  background: #f0f9f0;
  clip-path: polygon(0 0, 100% 0, 100% 100%);
}
main > section:nth-of-type(5) .grid {
  margin-top: .75rem;
}
main > section:nth-of-type(5) .grid > div {
  border: 1px solid var(--sat-line) !important;
  border-radius: .75rem !important;
  box-shadow: none !important;
}

/* Bonuses. */
main > section:nth-of-type(6) {
  background: #fff !important;
}
main > section:nth-of-type(6) .inline-flex {
  border: 0 !important;
  border-radius: .5rem !important;
  background: var(--sat-purple) !important;
  color: #fff !important;
}
main > section:nth-of-type(6) h2 span {
  color: var(--sat-purple) !important;
  -webkit-text-fill-color: currentColor !important;
  font-style: normal !important;
}
main > section:nth-of-type(6) .grid > div {
  border: 1px solid var(--sat-line) !important;
  border-radius: .85rem !important;
  box-shadow: 0 10px 28px rgba(44, 24, 63, .06) !important;
}
main > section:nth-of-type(6) .grid > div:hover {
  box-shadow: 0 14px 32px rgba(44, 24, 63, .1) !important;
  transform: translateY(-2px) !important;
}
main > section:nth-of-type(6) .bg-green-50\/60 {
  border-radius: .6rem !important;
  background: #f0f9f0 !important;
}

/* Pricing. */
main > section:nth-of-type(7) { background: #f0f9f0 !important; }
main > section:nth-of-type(7) .grid.md\:grid-cols-2 > div {
  border-radius: 1rem !important;
}
main > section:nth-of-type(7) .grid.md\:grid-cols-2 > div:first-child {
  border: 1px solid var(--sat-line) !important;
  box-shadow: none !important;
}
main > section:nth-of-type(7) .text-green-600 { color: #169950 !important; }
main > section:nth-of-type(7) .rounded-full.bg-green-50,
main > section:nth-of-type(7) .rounded-full.bg-green-100 {
  border-radius: .45rem !important;
}
main > section:nth-of-type(7) .aspect-square {
  border-radius: .55rem !important;
  background: #f0f9f0 !important;
}
main > section:nth-of-type(7) .border.rounded-xl {
  border-radius: .55rem !important;
  background: #f0f9f0;
}
main > section:nth-of-type(7) .grid.md\:grid-cols-2 > div:first-child .text-4xl {
  font-size: clamp(3.25rem, 5vw, 3.75rem) !important;
  line-height: 1 !important;
}
main > section:nth-of-type(7) .premium-card .text-5xl {
  font-size: clamp(4rem, 6vw, 4.5rem) !important;
  line-height: 1 !important;
}
main > section:nth-of-type(7) a.gradient-cta {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}
main > section:nth-of-type(7) .grid.md\:grid-cols-2 > div:first-child a.gradient-cta {
  border: 2px solid #c7cbd1 !important;
  background: transparent !important;
  color: #6b7280 !important;
  box-shadow: none !important;
}
main > section:nth-of-type(7) .grid.md\:grid-cols-2 > div:first-child a.gradient-cta:hover {
  border-color: #9ca3af !important;
  background: #f8fafc !important;
  color: #4b5563 !important;
  box-shadow: none !important;
}

/* Google, guarantee and FAQ. */
.sat-google-section { background: #fffdf9 !important; }
.sat-google-card {
  border-color: var(--sat-line) !important;
  border-radius: .65rem !important;
  box-shadow: 0 8px 22px rgba(44, 24, 63, .05) !important;
}
.sat-google-excellent,
.sat-google-score { color: var(--sat-ink) !important; }
.sat-google-meta h3 { color: #000 !important; }
.sat-google-copy { color: #3d5c3d !important; }
main > section:nth-of-type(9) { background: #fff !important; }
main > section:nth-of-type(9) h2 {
  color: var(--sat-ink) !important;
  font-family: Montserrat, Arial, sans-serif !important;
  font-weight: 900 !important;
  letter-spacing: -.02em !important;
}
main > section:nth-of-type(9) a {
  border: 1px solid #10793a !important;
  border-radius: .75rem !important;
  background: #168a45 !important;
  box-shadow: 0 10px 24px rgba(22, 138, 69, .18) !important;
}
main > section:nth-of-type(10) { background: #f0f9f0 !important; }
main > section:nth-of-type(10) .space-y-3 > div {
  border: 1px solid var(--sat-line) !important;
  border-radius: .6rem !important;
  box-shadow: none !important;
}
main > section:nth-of-type(10) button { color: var(--sat-ink); }

/* Final color pass: white is the dominant canvas and purple is reserved for accents. */
body { background: #fff; }
main > section:nth-of-type(1),
main > section:nth-of-type(2),
main > section:nth-of-type(3),
main > section:nth-of-type(4),
main > section:nth-of-type(5),
main > section:nth-of-type(6),
main > section:nth-of-type(7),
main > section:nth-of-type(8),
main > section:nth-of-type(9),
main > section:nth-of-type(10) {
  border-top: 0 !important;
  background: #fff !important;
}
main h2 span {
  background: none !important;
  filter: none !important;
}
main > section:nth-of-type(6) .inline-flex,
main > section:nth-of-type(6) .inline-flex * {
  color: #fff !important;
}
main > section:nth-of-type(6) .inline-flex svg {
  stroke: #fff !important;
}
footer {
  background: #1b5e20 !important;
}
footer h3 {
  color: #fff !important;
}

@media (max-width: 639px) {
  main h2 { font-size: 2rem !important; line-height: 1.05 !important; }
  main > section:nth-of-type(1) h1 {
    font-size: clamp(2rem, 9.25vw, 2.35rem) !important;
    line-height: .98 !important;
  }
  main > section:nth-of-type(1) .sat-hero-steps {
    gap: .25rem !important;
  }
  main > section:nth-of-type(1) .sat-hero-steps > div {
    gap: .25rem !important;
  }
  main > section:nth-of-type(1) .inline-flex.bg-white {
    min-width: 0;
    gap: .3rem !important;
    padding: .5rem .48rem !important;
    white-space: nowrap;
    font-size: .62rem;
  }
  main > section:nth-of-type(1) .sat-hero-steps svg {
    width: .85rem !important;
    height: .85rem !important;
  }
  main > section:nth-of-type(1) .sat-hero-steps > div > span {
    flex: 0 0 auto;
    font-size: .95rem;
    line-height: 1;
  }
  main > section:nth-of-type(2) .sat-second-fold-card {
    border-radius: 1rem !important;
  }
  main > section:nth-of-type(4) {
    padding-bottom: 1.5rem !important;
  }
  .sat-objections-section {
    padding-top: 1rem !important;
  }
  .sat-objections-list {
    gap: 1.15rem;
  }
  .sat-objection-question {
    width: 93%;
    padding: .9rem 1rem .9rem 3.35rem;
    font-size: .93rem !important;
  }
  .sat-objection-question::before {
    left: .8rem;
  }
  .sat-objection-answer {
    width: 96%;
    padding: .9rem 1rem;
    font-size: .88rem !important;
  }
  main > section:nth-of-type(6) .grid > div,
  main > section:nth-of-type(7) .grid.md\:grid-cols-2 > div {
    border-radius: .75rem !important;
  }
}



/* Mobile-first base optimizations */
html { -webkit-text-size-adjust: 100%; }
body { overflow-x: hidden; }
button, a { touch-action: manipulation; }
img, video, svg { max-width: 100%; height: auto; }



	@font-face {
		font-family: 'CameraPlainVariable';
		src: url('https://cdn.gpteng.co/mcp-widgets/v1/fonts/CameraPlainVariable.woff2') format('woff2');
		font-weight: 100 900;
		font-style: normal;
		font-display: swap;
	}

	#lovable-badge {
		--badge-bg: #1b1b1b;
		--badge-text: #c5c1b9;
		--badge-text-hover: #dcdad5;
		--badge-radius: 6px;
		--badge-padding: 8px;
		--badge-gap: 6px;
		--badge-shadow: 
			0 0 0 1px rgba(0, 0, 0, 0.88),
			0 1px 0 0 rgba(0, 0, 0, 0.04),
			0 2px 2px -1px rgba(0, 0, 0, 0.08),
			0 4px 4px -2px rgba(0, 0, 0, 0.08),
			0 8px 8px -4px rgba(0, 0, 0, 0.08),
			0 16px 16px -8px rgba(0, 0, 0, 0.08);
		--badge-transition-duration: 0.2s;
		--badge-transition-easing: cubic-bezier(0.16, 1, 0.32, 1);
		--focus-color: #575ECF;
		--focus-offset: 2px;
		--focus-width: 2px;
		
		position: fixed;
		bottom: 12px;
		right: 12px;
		height: 24px;
		display: flex;
		align-items: center;
		z-index: 1000000;
		background-color: var(--badge-bg) !important;
		color: var(--badge-text) !important;
		border-radius: var(--badge-radius);
		box-shadow: var(--badge-shadow) !important;
		font-size: 12px;
		font-family: CameraPlainVariable, "CameraPlainVariable Fallback", -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
		font-weight: 400 !important;
		text-transform: none !important;
		font-feature-settings: normal !important;
		transform: translateZ(0);
		will-change: transform, opacity;
	}

	#lovable-badge-cta {
		display: flex;
		align-items: center;
		gap: var(--badge-gap);
		padding: 0 var(--badge-padding);
		height: 100%;
		color: inherit;
		text-decoration: none;
		white-space: nowrap;
		border-radius: var(--badge-radius) 0 0 var(--badge-radius);
		transition: 
			background-color var(--badge-transition-duration) ease,
			color var(--badge-transition-duration) ease,
			transform 0.1s ease;
	}

	#lovable-badge-cta:hover {
		background: rgba(255, 255, 255, 0.04);
		color: var(--badge-text-hover);
	}

	#lovable-badge-cta:active {
		transform: scale(0.98);
	}

	#lovable-badge-cta:focus {
		outline: none;
	}

	#lovable-badge-cta:focus-visible {
		outline: var(--focus-width) solid var(--focus-color);
		outline-offset: var(--focus-offset);
		z-index: 1;
	}

	#lovable-badge-text {
		line-height: 1;
	}

	#lovable-badge-divider {
		width: 1px;
		height: 24px;
		background-color: rgba(255, 255, 255, 0.04);
		flex-shrink: 0;
	}

	#lovable-badge-close {
		width: 24px;
		height: 24px;
		min-width: 24px;
		min-height: 24px;
		cursor: pointer;
		background: none;
		border: none;
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 0 var(--badge-radius) var(--badge-radius) 0;
		flex-shrink: 0;
		transition: 
			background-color var(--badge-transition-duration) ease,
			transform 0.1s ease;
	}

	#lovable-badge-close:hover {
		background: rgba(255, 255, 255, 0.04);
	}

	#lovable-badge-close:active {
		transform: scale(0.92);
	}

	#lovable-badge-close:focus {
		outline: none;
	}

	#lovable-badge-close:focus-visible {
		outline: var(--focus-width) solid var(--focus-color);
		outline-offset: calc(var(--focus-offset) * -1);
		z-index: 1;
	}

	#lovable-badge-close svg path {
		fill: var(--badge-text);
		transition: fill var(--badge-transition-duration) ease;
	}

	#lovable-badge-close:hover svg path {
		fill: var(--badge-text-hover);
	}

	@media (prefers-reduced-motion: reduce) {
		#lovable-badge-cta,
		#lovable-badge-close,
		#lovable-badge-close svg path {
			transition: none;
		}
		
		#lovable-badge-cta:active,
		#lovable-badge-close:active {
			transform: none;
		}
	}

	@media (prefers-contrast: high) {
		#lovable-badge {
			--badge-bg: #000;
			--badge-text: #fff;
			--badge-text-hover: #fff;
			border: 2px solid currentColor;
		}
		
		#lovable-badge-cta:focus-visible,
		#lovable-badge-close:focus-visible {
			outline-width: 3px;
		}
	}
