:root {
  --cream: #f2f0eb;
  --parchment: #e8e4db;
  --stone: #9a9590;
  --stone-d: #6b6560;
  --ink: #1c1a17;
  --ink-soft: #2c2a26;
  --amber: #c8965a;
  --amber-light: #e8c896;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
  margin: 0;
  padding: 0;
  background: var(--cream);
  color: var(--ink);
  font-family: 'DM Sans', sans-serif;
  font-weight: 300;
  overflow-x: hidden;
}

/* ── GRAIN ── */
body::after {
  content: '';
  position: fixed; inset: 0;
  pointer-events: none; z-index: 999;
  opacity: 0.022;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ── GLASS BLOCK SURFACE ──
   The core design element.
   Mimics the circular-dimpled glass brick facade from the reference photo.
*/
.gb {
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 1.5px 0 rgba(255,255,255,0.55), inset 0 -1px 0 rgba(0,0,0,0.04);
}
.gb::before {
  content: '';
  position: absolute; inset: 0;
  background-image:
    radial-gradient(circle 6.5px at 50% 50%,
      rgba(255,255,255,0.6) 0%,
      rgba(255,255,255,0.1) 52%,
      transparent 100%);
  background-size: 20px 20px;
  border-radius: inherit;
  pointer-events: none;
  z-index: 0;
}
.gb > * { position: relative; z-index: 1; }

.gb-amber::before {
  background-image:
    radial-gradient(circle 6.5px at 50% 50%,
      rgba(220,165,80,0.5) 0%,
      rgba(200,140,60,0.08) 52%,
      transparent 100%);
  background-size: 20px 20px;
}
.gb-dark::before {
  background-image:
    radial-gradient(circle 6.5px at 50% 50%,
      rgba(255,255,255,0.1) 0%,
      rgba(255,255,255,0.02) 52%,
      transparent 100%);
  background-size: 20px 20px;
}
.gb-lg::before { background-size: 28px 28px; }
.gb-sm::before { background-size: 14px 14px; }

/* ── NAV ── */
#nav {
  position: fixed; top:0; left:0; right:0; z-index:100;
  backdrop-filter: blur(12px) saturate(1.08);
  -webkit-backdrop-filter: blur(12px) saturate(1.08);
  background: rgba(242,240,235,0.9);
  border-bottom: 1px solid rgba(28,26,23,0.07);
  transition: box-shadow 0.3s;
}
#nav.scrolled { box-shadow: 0 1px 24px rgba(28,26,23,0.07); }

/* ── TYPE ── */
.display {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  line-height: 0.95;
  letter-spacing: -0.02em;
}
.eye {
  font-family: 'DM Mono', monospace;
  font-size: 9.5px;
  letter-spacing: 0.22em;
  color: var(--stone);
  text-transform: uppercase;
}
.logo-wm {
  font-family: 'DM Sans', sans-serif;
  font-weight: 200;
  letter-spacing: 0.18em;
  font-size: 14px;
}
.a-rule {
  display: block;
  width: 0; height: 1.5px;
  background: var(--amber);
  flex-shrink: 0;
  transition: width 0.65s 0.1s cubic-bezier(0.16, 1, 0.3, 1);
}
.r.on .a-rule { width: 28px; }

/* ── BUTTONS ── */
.btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 12px 26px; border-radius: 4px;
  font-size: 12.5px; font-weight: 400;
  letter-spacing: 0.06em; text-decoration: none;
  transition: all 0.25s; border: none; cursor: pointer;
  font-family: 'DM Sans', sans-serif;
}
.btn-ink { background: var(--ink); color: var(--cream); }
.btn-ink:hover { background: var(--ink-soft); transform: translateY(-1px); box-shadow: 0 8px 24px rgba(28,26,23,0.22); }
.btn-out { background: transparent; color: var(--ink); border: 1px solid rgba(28,26,23,0.2); }
.btn-out:hover { border-color: rgba(28,26,23,0.5); background: rgba(28,26,23,0.04); }
.btn-cream { background: var(--cream); color: var(--ink); }
.btn-cream:hover { background: var(--parchment); transform: translateY(-1px); box-shadow: 0 8px 24px rgba(28,26,23,0.12); }

/* ── REVEAL ── */
.r {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.75s ease, transform 0.75s ease;
}
.r.on { opacity:1; transform:translateY(0); }
.d1 { transition-delay: 0.08s; }
.d2 { transition-delay: 0.16s; }
.d3 { transition-delay: 0.24s; }
.d4 { transition-delay: 0.32s; }

.hl  { animation: hl 0.9s ease both; }
.hl2 { animation: hl 0.9s 0.12s ease both; }
.hl3 { animation: hl 0.9s 0.26s ease both; }
.hl4 { animation: hl 0.9s 0.40s ease both; }
.hl5 { animation: hl 0.9s 0.54s ease both; }
@keyframes hl {
  from { opacity:0; transform:translateY(18px); }
  to   { opacity:1; transform:translateY(0); }
}

/* ── CARDS ── */
.card {
  background: rgba(255,255,255,0.4);
  border: 1px solid rgba(28,26,23,0.09);
  border-radius: 8px;
  transition: all 0.3s;
}
.card-hover:hover {
  background: rgba(255,255,255,0.65);
  border-color: rgba(28,26,23,0.16);
  transform: translateY(-3px);
  box-shadow: 0 14px 40px rgba(28,26,23,0.09);
}

/* ── BEFORE/AFTER ── */
.ba-col {
  border: 1px solid rgba(28,26,23,0.09);
  border-radius: 9px;
  overflow: hidden;
}
.ba-header {
  padding: 14px 24px;
  display: flex; align-items: center; gap: 10px;
  border-bottom: 1px solid rgba(28,26,23,0.07);
}
.ba-row {
  display: flex; align-items: flex-start; gap: 14px;
  padding: 16px 24px;
  border-bottom: 1px solid rgba(28,26,23,0.05);
  transition: background 0.2s;
}
.ba-row:last-child { border-bottom: none; }
.ba-row:hover { background: rgba(255,255,255,0.35); }
.ba-icon {
  width: 22px; height: 22px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; margin-top: 1px;
  font-size: 11px;
}

/* ── FEATURE GRID ── */
.feat-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  border: 1px solid rgba(28,26,23,0.09);
  border-radius: 9px;
  overflow: hidden;
}
.feat-cell {
  padding: 30px 26px;
  border-right: 1px solid rgba(28,26,23,0.07);
  border-bottom: 1px solid rgba(28,26,23,0.07);
  transition: background 0.25s, transform 0.25s, box-shadow 0.25s;
}
.feat-cell:nth-child(3n) { border-right: none; }
.feat-cell:nth-last-child(-n+3) { border-bottom: none; }
.feat-cell:hover { background: rgba(255,255,255,0.58); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(28,26,23,0.06); }

/* ── SITE PREVIEW ── */
.site-card {
  background: var(--parchment);
  border: 1px solid rgba(28,26,23,0.1);
  border-radius: 6px;
  overflow: hidden;
  transition: all 0.3s;
}
.site-card:hover { transform: translateY(-4px); box-shadow: 0 14px 36px rgba(28,26,23,0.11); }
.s-chrome {
  background: rgba(28,26,23,0.05);
  padding: 6px 10px;
  display: flex; align-items: center; gap: 4px;
  border-bottom: 1px solid rgba(28,26,23,0.07);
}
.s-dot { width:5px;height:5px;border-radius:50%;background:rgba(28,26,23,0.14); }
.s-line { height:4px;border-radius:2px;background:rgba(28,26,23,0.1);margin-bottom:5px; }

/* ── PRICING ── */
.pc {
  border: 1px solid rgba(28,26,23,0.1);
  border-radius: 9px;
  padding: 30px 26px;
  background: rgba(255,255,255,0.35);
  transition: all 0.3s;
  position: relative;
  display: flex;
  flex-direction: column;
}
.pc:hover { background: rgba(255,255,255,0.6); transform: translateY(-4px); box-shadow: 0 18px 50px rgba(28,26,23,0.09); }
.pc.feat { background: var(--ink); border-color: var(--ink); color: var(--cream); overflow: visible; }
.pc.feat:hover { background: var(--ink-soft); }

/* ── STAT ── */
.stat {
  border: 1px solid rgba(28,26,23,0.09);
  border-radius: 7px;
  padding: 18px 20px 20px;
  background: rgba(255,255,255,0.28);
  transition: all 0.3s;
}
.stat:hover { background: rgba(255,255,255,0.55); transform: translateY(-2px); box-shadow: 0 8px 20px rgba(28,26,23,0.07); }
.stat-n {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  font-size: 36px;
  line-height: 1;
}

/* ── PROOF ── */
.proof-wrap {
  display: grid;
  grid-template-columns: minmax(300px, 0.95fr) minmax(0, 1.25fr);
  gap: 16px;
  align-items: stretch;
}
.proof-lead {
  padding: 34px 30px;
  border: 1px solid rgba(28,26,23,0.09);
  border-radius: 10px;
  background:
    radial-gradient(circle at top right, rgba(200,150,90,0.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.62), rgba(255,255,255,0.34));
  box-shadow: 0 16px 42px rgba(28,26,23,0.05);
}
.proof-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.proof-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.proof-card {
  padding: 24px 22px;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  background: rgba(255,255,255,0.44);
  border-radius: 10px;
  border: 1px solid rgba(28,26,23,0.09);
  box-shadow: 0 10px 30px rgba(28,26,23,0.04);
}
.proof-card:nth-child(1) {
  background: linear-gradient(180deg, rgba(255,255,255,0.66), rgba(255,255,255,0.42));
}
.proof-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 40px rgba(28,26,23,0.08);
}
.proof-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: auto;
  color: var(--ink);
  font-size: 12px;
  font-family: 'DM Mono', monospace;
  letter-spacing: 0.05em;
  text-decoration: none;
}
.proof-link::after {
  content: '→';
  transition: transform 0.2s ease;
}
.proof-link:hover::after {
  transform: translateX(3px);
}

/* ── CTA ── */
.cta-wrap {
  background: var(--ink);
  position: relative;
  overflow: hidden;
}

/* ── TESTIMONIAL ── */
.test-wrap {
  display: block;
}
.test-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.tcard {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.76), rgba(255,255,255,0.44)),
    radial-gradient(circle at bottom left, rgba(200,150,90,0.06), transparent 30%);
  border: 1px solid rgba(28,26,23,0.08);
  border-radius: 12px;
  padding: 28px 26px 24px;
  position: relative;
  transition: all 0.3s;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  box-shadow: 0 18px 40px rgba(28,26,23,0.04);
}
.tcard:hover { border-color: rgba(28,26,23,0.14); transform: translateY(-3px); box-shadow: 0 18px 42px rgba(28,26,23,0.08); }
.tcard::before {
  content: '"';
  position: absolute; top: 10px; left: 18px;
  font-family: 'Cormorant Garamond', serif;
  font-size: 72px; line-height:1;
  color: rgba(28,26,23,0.07); font-weight:300;
}
.tcard-quote {
  margin: 0;
  padding-top: 6px;
  font-size: 17px;
  color: #343128;
  line-height: 1.9;
  font-weight: 300;
  font-family: 'Cormorant Garamond', serif;
}
.tcard-foot {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: auto;
  padding-top: 20px;
  border-top: 1px solid rgba(28,26,23,0.07);
  margin-top: 24px;
}
.tcard-flag {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255,255,255,0.6);
  border: 1px solid rgba(28,26,23,0.09);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  flex-shrink: 0;
}
.tcard-name {
  font-size: 12px;
  font-weight: 400;
  color: var(--ink);
  letter-spacing: 0.02em;
}
.tcard-meta {
  font-size: 10px;
  color: var(--stone);
  font-family: 'DM Mono', monospace;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-top: 4px;
}

/* ── FAQ ── */
.faq-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr);
  gap: 42px;
  align-items: start;
}
.faq-list {
  display: grid;
  gap: 12px;
}
.faq-item {
  background: rgba(255,255,255,0.36);
  border: 1px solid rgba(28,26,23,0.08);
  border-radius: 8px;
  padding: 0 22px;
  transition: background 0.25s, border-color 0.25s, transform 0.25s, box-shadow 0.25s;
}
.faq-item[open],
.faq-item:hover {
  background: rgba(255,255,255,0.58);
  border-color: rgba(28,26,23,0.14);
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(28,26,23,0.06);
}
.faq-item summary {
  list-style: none;
  cursor: pointer;
  padding: 20px 28px 20px 0;
  position: relative;
  font-family: 'Cormorant Garamond', serif;
  font-size: 24px;
  line-height: 1.15;
  color: var(--ink);
}
.faq-item summary::-webkit-details-marker {
  display: none;
}
.faq-item summary::after {
  content: '+';
  position: absolute;
  top: 17px;
  right: 0;
  font-family: 'DM Sans', sans-serif;
  font-size: 22px;
  color: var(--amber);
  transition: transform 0.2s ease;
}
.faq-item[open] summary::after {
  transform: rotate(45deg);
}
.faq-item p {
  margin: 0;
  padding: 0 0 18px;
  font-size: 13.5px;
  line-height: 1.75;
  color: var(--stone-d);
  font-weight: 300;
}

/* ── INPUT ── */
.field {
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(242,240,235,0.2);
  border-radius: 4px;
  padding: 13px 18px;
  font-size: 14px;
  font-family: 'DM Sans', sans-serif;
  font-weight: 300;
  color: var(--cream);
  outline: none;
  transition: border-color 0.2s;
  width: 100%;
}
.field:focus { border-color: rgba(242,240,235,0.5); }
.field.is-invalid { border-color: rgba(255,110,110,0.65); }
.field::placeholder { color: rgba(242,240,235,0.3); }

.div { height:1px; background:rgba(28,26,23,0.07); max-width:1100px; margin:0 auto; }

::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:var(--cream); }
::-webkit-scrollbar-thumb { background:rgba(28,26,23,0.18); border-radius:3px; }

/* ── HAMBURGER ── */
.nav-ham {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 36px; height: 36px;
  cursor: pointer;
  background: none; border: none; padding: 4px;
}
.nav-ham span {
  display: block;
  height: 1.5px; width: 100%;
  background: var(--ink);
  transition: all 0.28s cubic-bezier(0.22,0.61,0.36,1);
  transform-origin: center;
}
.nav-ham.open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.nav-ham.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav-ham.open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* ── MOBILE MENU OVERLAY ── */
#nav-mobile {
  visibility: hidden;
  opacity: 0;
  transform: translateY(-8px);
  position: fixed; inset: 62px 0 0 0;
  background: rgba(242,240,235,0.97);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  z-index: 99;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  border-top: 1px solid rgba(28,26,23,0.07);
  height: max-content;
  padding-bottom: 24px;
  transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1), visibility 0.3s;
}
#nav-mobile.open {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}
#nav-mobile a:not(.btn) {
  font-size: 26px;
  font-family: 'Cormorant Garamond', serif;
  font-weight: 300;
  color: var(--ink);
  text-decoration: none;
  padding: 18px 0;
  width: 100%; text-align: center;
  border-bottom: 1px solid rgba(28,26,23,0.05);
  letter-spacing: 0.02em;
  transition: color 0.2s, background 0.2s;
}
#nav-mobile a:not(.btn):hover { background: rgba(28,26,23,0.03); color: var(--amber); }
#nav-mobile a.btn { margin: 24px 32px 10px; width: calc(100% - 64px); display: flex; justify-content: center; padding: 14px 0 !important; }

/* ── CAROUSEL ── */
.carousel-wrap {
  overflow-x: clip;
  overflow-y: visible;
  width: 100%;
  position: relative;
  cursor: grab;
  user-select: none;
}
.carousel-wrap.is-dragging { cursor: grabbing; }
.carousel-wrap::before,
.carousel-wrap::after {
  content: '';
  position: absolute;
  top: 0; bottom: 0;
  width: 120px;
  z-index: 2;
  pointer-events: none;
}
.carousel-wrap::before { left: 0; background: linear-gradient(to right, var(--cream), transparent); }
.carousel-wrap::after  { right: 0; background: linear-gradient(to left, var(--cream), transparent); }

.carousel-track {
  display: flex;
  gap: 20px;
  width: max-content;
  animation: marquee 60s linear infinite;
  padding: 20px 0 52px;
  will-change: transform;
  transform: translateZ(0);
}
.carousel-wrap:hover .carousel-track { animation-play-state: paused; }
.carousel-wrap:not(.is-in-view) .carousel-track { animation-play-state: paused; }

@keyframes marquee {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* ── CAROUSEL REVEAL (replaces .r.d1 on wrap) ── */
.carousel-track {
  opacity: 0;
  transition: opacity 0.7s ease;
}
.carousel-outer-visible .carousel-track {
  opacity: 1;
}


.crd {
  width: 220px;
  flex-shrink: 0;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(28,26,23,0.1);
  transition: transform 0.3s, box-shadow 0.3s;
  background: var(--cream);
}
.crd:hover { transform: translateY(-5px); box-shadow: 0 16px 40px rgba(28,26,23,0.13); }
.crd-chrome {
  padding: 7px 10px;
  display: flex; align-items: center; gap: 4px;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  background: rgba(0,0,0,0.035);
}
.crd-dot { width: 6px; height: 6px; border-radius: 50%; }
.crd-hero {
  height: 90px;
  display: flex; align-items: center; justify-content: center;
  position: relative; overflow: hidden;
}
.crd-hero::before {
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(circle 5px at 50% 50%, rgba(255,255,255,0.25) 0%, rgba(255,255,255,0.04) 55%, transparent 100%);
  background-size: 18px 18px;
}
.crd-body { padding: 10px 12px; }
.crd-line { height: 4px; border-radius: 2px; margin-bottom: 5px; background: rgba(0,0,0,0.1); }
.crd-label { padding: 0 12px 10px; }

/* ── REAL SITE CARDS ── */
.rcrd { width:400px; flex-shrink:0; border-radius:10px; overflow:hidden;
  border:1px solid rgba(28,26,23,0.10); background:var(--cream);
  box-shadow:0 4px 24px rgba(28,26,23,0.08),0 1px 4px rgba(28,26,23,0.05);
  transition:transform 0.35s,box-shadow 0.35s; }
.rcrd:hover { transform:translateY(-6px); box-shadow:0 18px 48px rgba(28,26,23,0.15); }
.rcrd-chrome { background:rgba(28,26,23,0.04); padding:8px 12px; display:flex;
  align-items:center; gap:6px; border-bottom:1px solid rgba(28,26,23,0.07); }
.rcrd-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; }
.rcrd-url { flex:1; background:rgba(28,26,23,0.055); border-radius:4px; padding:3px 10px;
  font-family:'DM Mono',monospace; font-size:9px; color:rgba(28,26,23,0.38);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rcrd-preview { width:100%; height:235px; object-fit:cover; object-position:top center;
  display:block; border-bottom:1px solid rgba(28,26,23,0.07); transition: transform 0.55s ease; }
.rcrd:hover .rcrd-preview { transform: scale(1.04); }
.rcrd-label { padding:12px 16px 13px; display:flex; align-items:center; justify-content:space-between; }
.rcrd-page { font-size:16px; color:var(--ink); font-weight:400; margin-top:3px;
  font-family:'Cormorant Garamond',serif; line-height:1.2; letter-spacing:0.01em; }
.rcrd-domain { font-size:9px; color:var(--stone); font-family:'DM Mono',monospace;
  letter-spacing:0.04em; align-self:flex-end; }

.rcrd-narrow { width: 220px; }

.rcrd-live .rcrd-preview-wrap {
  position: relative;
  height: 235px;
  border-bottom: 1px solid rgba(28,26,23,0.07);
  background: linear-gradient(120deg, rgba(28,26,23,0.06), rgba(28,26,23,0.02));
  overflow: hidden;
}

.rcrd-live-frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 1600px;
  height: 1020px;
  transform: scale(0.25);
  transform-origin: top left;
  will-change: transform;
}

.rcrd-live-frame iframe {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
  pointer-events: none;
}

.rcrd-live.active-live iframe {
  pointer-events: auto;
}

.rcrd-live-mask {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(242,240,235,0) 62%, rgba(242,240,235,0.76));
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.rcrd-live.active-live .rcrd-live-mask {
  opacity: 0.08;
}

.rcrd-open {
  border: 1px solid rgba(28,26,23,0.14);
  background: rgba(255,255,255,0.45);
  color: var(--ink);
  text-decoration: none;
  border-radius: 4px;
  padding: 6px 10px;
  font-size: 10px;
  font-family: 'DM Mono', monospace;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  transition: all 0.2s ease;
}

.rcrd-open:hover {
  background: rgba(28,26,23,0.08);
  border-color: rgba(28,26,23,0.25);
}

/* ── CAROUSEL VIEW TOGGLE ── */
.carousel-toggle-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 13px;
  background: transparent;
  border: none;
  cursor: pointer;
  font-family: 'DM Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--stone-d);
  transition: background 0.18s, color 0.18s;
  white-space: nowrap;
}
.carousel-toggle-btn:hover { color: var(--ink); }
.carousel-toggle-btn.active {
  background: rgba(28,26,23,0.07);
  color: var(--ink);
}

.carousel-wrap.is-interacting .carousel-track {
  animation-play-state: paused;
}

/* ── LIGHTBOX ── */
#lbox { position:fixed; inset:0; z-index:9999; background:rgba(15,13,10,0.92);
  display:flex; align-items:center; justify-content:center; padding:20px;
  opacity:0; pointer-events:none; transition:opacity 0.28s ease; }
#lbox.open { opacity:1; pointer-events:all; }
.lbox-inner { position:relative; width:min(920px,94vw); max-height:90vh;
  border-radius:12px; overflow:hidden; background:var(--cream);
  box-shadow:0 48px 120px rgba(0,0,0,0.65); display:flex; flex-direction:column;
  transform:scale(0.95); transition:transform 0.28s ease; }
#lbox.open .lbox-inner { transform:scale(1); }
.lbox-bar { display:flex; align-items:center; justify-content:space-between;
  padding:9px 12px 9px 16px; background:rgba(28,26,23,0.04);
  border-bottom:1px solid rgba(28,26,23,0.07); flex-shrink:0; }
.lbox-title { font-family:'DM Mono',monospace; font-size:9px; color:var(--stone-d);
  letter-spacing:0.08em; text-transform:uppercase; }
#lbox-close { background:rgba(28,26,23,0.08); border:none; cursor:pointer;
  width:26px; height:26px; border-radius:50%; color:var(--ink); font-size:14px;
  display:flex; align-items:center; justify-content:center;
  transition:background 0.18s; flex-shrink:0; line-height:1; }
#lbox-close:hover { background:rgba(28,26,23,0.22); }
.lbox-scroll { overflow-y:auto; flex:1; -webkit-overflow-scrolling:touch; }
#lbox-img { display:block; width:100%; height:auto; }
.lbox-foot { padding:9px 16px; background:rgba(28,26,23,0.03);
  border-top:1px solid rgba(28,26,23,0.07); display:flex;
  align-items:center; justify-content:space-between; flex-shrink:0;
  font-family:'DM Mono',monospace; font-size:9px; color:var(--stone);
  letter-spacing:0.04em; }

/* ── MOBILE PREVIEW LIGHTBOX ── */
#mlbox {
  position: fixed; inset: 0; z-index: 10000;
  background: rgba(10,9,7,0.95);
  display: flex; align-items: center; justify-content: center; padding: 20px;
  opacity: 0; pointer-events: none;
  transition: opacity 0.28s ease;
}
#mlbox.open { opacity: 1; pointer-events: all; }

.mlbox-wrap {
  display: flex; flex-direction: column; align-items: center; gap: 16px;
  transform: scale(0.92);
  transition: transform 0.3s cubic-bezier(0.16,1,0.3,1);
}
#mlbox.open .mlbox-wrap { transform: scale(1); }

#mlbox-close {
  align-self: flex-end;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 20px;
  color: rgba(242,240,235,0.6);
  cursor: pointer;
  font-family: 'DM Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.05em;
  padding: 6px 16px;
  text-transform: uppercase;
  transition: background 0.18s, color 0.18s;
}
#mlbox-close:hover { background: rgba(255,255,255,0.14); color: var(--cream); }

.mlbox-phone {
  width: 375px;
  background: #111;
  border-radius: 44px;
  border: 7px solid #2e2e2e;
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.06),
    0 48px 100px rgba(0,0,0,0.8),
    inset 0 0 0 1px rgba(255,255,255,0.04);
  overflow: hidden;
  display: flex; flex-direction: column;
}

.mlbox-notch-bar {
  height: 28px; background: #111;
  display: flex; align-items: flex-end; justify-content: center;
  padding-bottom: 4px; flex-shrink: 0;
}
.mlbox-notch {
  width: 100px; height: 20px;
  background: #1c1c1e;
  border-radius: 0 0 16px 16px;
}

#mlbox-iframe {
  display: block;
  width: 375px;
  height: min(70vh, 680px);
  border: none;
  background: #fff;
}

.mlbox-home-bar {
  height: 28px; background: #111;
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.mlbox-home-bar::after {
  content: '';
  width: 100px; height: 4px;
  background: rgba(255,255,255,0.22);
  border-radius: 2px;
}

/* ── WINDMILL ── */
#wm-wrap {
  position: absolute;
  left: 0; top: 50%;
  transform: translateY(-52%);
  width: 56vw; height: 110vh;
  max-width: 760px;
  pointer-events: none;
  z-index: 2;
  overflow: visible;
}
#wm-svg { width: 100%; height: 100%; overflow: visible; }
.blade-card {
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(244,242,238,0.97);
  border: 1px solid rgba(28,26,23,0.14);
  border-radius: 5px;
  padding: 9px 18px 8px;
  pointer-events: none;
  transform: translate3d(0, 0, 0) translate(-50%, -50%);
  will-change: transform;
  white-space: nowrap;
  box-shadow: 0 2px 16px rgba(28,26,23,0.10), 0 1px 3px rgba(28,26,23,0.06),
              inset 0 1px 0 rgba(255,255,255,0.85);
}
.blade-card::before {
  content: '';
  position: absolute;
  top: 0; left: 14px; right: 14px; height: 1.5px;
  background: linear-gradient(to right, transparent, rgba(200,150,90,0.45), transparent);
  border-radius: 1px;
}
.blade-card-n {
  font-family: 'DM Mono', monospace;
  font-size: 11.5px;
  font-weight: 400;
  letter-spacing: 0.14em;
  color: rgba(28,26,23,0.62);
  line-height: 1.4;
}
/* ── FROM-STONE REVEAL ── */
.from-stone {
  clip-path: inset(100% 0 0 0 round 10px);
  transform: translateY(-16px);
  transition: clip-path 1.4s cubic-bezier(0.16, 1, 0.3, 1),
              transform 1.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.from-stone.on {
  clip-path: inset(0% 0 0 0 round 0px);
  transform: translateY(0);
}
/* ── MILLSTONE ── */
.millstone-wrap { position: relative; overflow: visible; }
.millstone-bg {
  position: absolute;
  left: 50%; top: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 0;
}
@keyframes millstone-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* ── DASHBOARD SHOWCASE ── */
.db-showcase-tab {
  padding: 8px 16px; border: none; background: transparent;
  color: rgba(242,240,235,0.38); font-family: 'DM Mono', monospace;
  font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase;
  cursor: pointer; border-radius: 5px;
  transition: background 0.22s, color 0.22s; white-space: nowrap;
}
.db-showcase-tab:hover { color: rgba(242,240,235,0.7); background: rgba(255,255,255,0.05); }
.db-showcase-tab.active { background: rgba(255,255,255,0.12); color: rgba(242,240,235,0.9); }

.db-mockup-outer {
  border-radius: 12px; overflow: hidden;
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 40px 100px rgba(0,0,0,0.55), 0 0 0 1px rgba(255,255,255,0.04);
  background: #1c1a17;
}
.db-mockup-chrome {
  background: rgba(255,255,255,0.04); border-bottom: 1px solid rgba(255,255,255,0.06);
  padding: 10px 16px; display: flex; align-items: center; gap: 12px;
}
.db-mockup-url {
  display: flex; align-items: center; gap: 6px; padding: 4px 14px;
  background: rgba(255,255,255,0.06); border-radius: 5px;
  font-family: 'DM Mono', monospace; font-size: 9.5px;
  color: rgba(242,240,235,0.25); letter-spacing: 0.04em;
  flex: 1; max-width: 260px; margin: 0 auto;
}
.db-mockup-body { display: flex; height: 530px; overflow: hidden; }
.db-mockup-aside {
  width: 210px; flex-shrink: 0;
  background: rgba(255,255,255,0.022);
  border-right: 1px solid rgba(255,255,255,0.055);
  display: flex; flex-direction: column; overflow: hidden;
}
.db-mockup-main { flex: 1; overflow: hidden; position: relative; }
.db-showcase-panel {
  position: absolute; inset: 0; overflow-y: auto;
  transition: opacity 0.28s ease, transform 0.28s ease;
  /* hide scrollbar — it looks bad inside the mockup */
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.db-showcase-panel::-webkit-scrollbar { display: none; }
.db-mockup-aside::-webkit-scrollbar { display: none; }
.db-mockup-inner::-webkit-scrollbar { display: none; }
.db-mockup-aside, .db-mockup-inner { scrollbar-width: none; -ms-overflow-style: none; }

.db-mockup-order-grid { display: grid; grid-template-columns: 1fr 240px; gap: 16px; }
.db-mockup-support-grid { display: grid; grid-template-columns: 220px 1fr; gap: 14px; }
.db-showcase-panel.db-hidden {
  opacity: 0; pointer-events: none; transform: translateX(10px);
}
.db-stat-chip {
  padding: 4px 10px; border-radius: 100px;
  font-family: 'DM Mono', monospace; font-size: 9px; letter-spacing: 0.08em;
  display: inline-flex; align-items: center; gap: 5px;
}
.db-callout {
  padding: 20px 22px; background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07); border-radius: 8px;
  transition: background 0.25s, border-color 0.25s, transform 0.25s;
}
.db-callout:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(200,150,90,0.3); transform: translateY(-3px);
}
.db-callout-icon { font-size: 18px; margin-bottom: 10px; }
.db-callout-title { font-size: 13px; color: rgba(242,240,235,0.85); font-weight: 400; margin-bottom: 5px; }
.db-callout-desc { font-size: 12px; color: rgba(242,240,235,0.38); line-height: 1.65; font-weight: 300; }

@media (max-width: 900px) {
  .db-mockup-outer {
    border-radius: 10px;
    margin: 0 -8px;
  }
  .db-mockup-aside { display: none; }
  .db-mockup-body { height: 460px; }
  .db-showcase-tab { font-size: 9px; padding: 6px 10px; }
  .db-callouts-grid { grid-template-columns: repeat(2,1fr) !important; }
  /* Showcase tabs: scrollable row on small screens */
  .db-showcase-tabs-wrap {
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    justify-content: flex-start !important;
    gap: 4px !important;
    padding-bottom: 4px;
  }
  .db-showcase-tabs-wrap::-webkit-scrollbar { display: none; }
  
  /* Make internal grids single column */
  .db-mockup-order-grid, .db-mockup-support-grid, .db-mockup-stack {
    grid-template-columns: 1fr !important;
  }
  .db-mockup-stack-2 {
    grid-template-columns: 1fr 1fr !important;
  }
}
@media (max-width: 600px) {
  .db-mockup-body { height: 400px; }
  .db-callouts-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 480px) {
  .db-mockup-body { height: 360px; }
  .db-callouts-grid { grid-template-columns: 1fr !important; }
  .db-mockup-outer { margin: 0; }
}

/* ── RESPONSIVE ── */

@media (max-width: 1024px) {
  .proof-wrap { grid-template-columns: 1fr !important; }
  .proof-grid { grid-template-columns: repeat(2,1fr) !important; }
  .feat-grid { grid-template-columns: repeat(2,1fr) !important; }
  .feat-cell:nth-child(3n) { border-right: 1px solid rgba(28,26,23,0.07); }
  .feat-cell:nth-child(2n) { border-right: none; }
  .feat-cell:nth-last-child(-n+3) { border-bottom: 1px solid rgba(28,26,23,0.07); }
  .feat-cell:nth-last-child(-n+2) { border-bottom: none; }
  /* Pricing: 4 cols → 2 cols on tablet */
  .price-grid { grid-template-columns: repeat(2,1fr) !important; }
}

@media (max-width: 768px) {
  body::after { display: none; }

  .nav-ham { display: flex; }
  .nav-desktop { display: none !important; }

  /* Hero */
  #wm-wrap, .blade-card { display: none !important; }
  .hero-glass-panel { display: none !important; }
  .hero-microcopy { max-width: 320px; }

  /* Before/After */
  .ba-grid { grid-template-columns: 1fr !important; }
  .ba-arrow { display: none !important; }

  /* Proof */
  .proof-wrap { grid-template-columns: 1fr !important; }
  .proof-grid { grid-template-columns: 1fr !important; }

  /* How it works */
  .how-grid { grid-template-columns: 1fr !important; }

  /* Features */
  .feat-grid { grid-template-columns: 1fr !important; }
  .feat-cell { border-right: none !important; }
  .feat-cell:nth-last-child(-n+2) { border-bottom: 1px solid rgba(28,26,23,0.07) !important; }
  .feat-cell:last-child { border-bottom: none !important; }

  /* Testimonials */
  .test-grid { grid-template-columns: 1fr !important; }

  /* FAQ */
  .faq-grid { grid-template-columns: 1fr !important; gap: 28px !important; }

  /* Pricing */
  .price-grid { grid-template-columns: 1fr !important; }

  /* Output */
  .output-grid { grid-template-columns: 1fr 1fr !important; }
  .rcrd { width: 320px; }
  .rcrd-live-frame { transform: scale(0.2); }

  /* Footer */
  .footer-inner { flex-direction: column !important; align-items: center !important; text-align: center !important; gap: 12px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body::after { display: none; }

  #nav,
  #nav-mobile {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  #nav-mobile {
    transition: none !important;
  }

  .carousel-track,
  .delivery-badge,
  .delivery-badge::before,
  #millstone-spinner {
    animation: none !important;
  }

  .r,
  .from-stone,
  .rcrd,
  .rcrd-preview,
  .card-hover,
  .pc,
  .stat,
  .tcard,
  .tag {
    transition: none !important;
  }
}

@media (max-width: 480px) {
  .output-grid { grid-template-columns: 1fr !important; }
  .rcrd { width: 280px; }
  .rcrd-live-frame { transform: scale(0.175); }
}

/* ── PILL TAG ── */
.tag {
  display: inline-flex; align-items: center;
  background: rgba(28,26,23,0.05);
  border: 1px solid rgba(28,26,23,0.1);
  border-radius: 3px;
  padding: 4px 11px;
  font-family: 'DM Mono', monospace;
  font-size: 10.5px;
  color: var(--stone-d);
  transition: all 0.2s;
}
.tag:hover { background: rgba(28,26,23,0.09); border-color: rgba(28,26,23,0.18); transform: translateY(-1px); }

/* ── DELIVERY BADGE ── */
.delivery-badge {
  display: inline-flex; align-items: center; gap: 7px;
  background: rgba(168,200,160,0.15);
  border: 1px solid rgba(100,160,100,0.2);
  border-radius: 100px;
  padding: 5px 14px;
  font-family: 'DM Mono', monospace;
  font-size: 10px;
  color: #4a7a4a;
  letter-spacing: 0.08em;
  animation: float 4s ease-in-out infinite;
}
.delivery-badge::before {
  content: '';
  width: 6px; height: 6px;
  border-radius: 50%;
  background: #4a7a4a;
  animation: pulse 2s infinite;
}
@keyframes pulse {
  0%,100% { opacity:1; transform:scale(1); }
  50% { opacity:0.5; transform:scale(0.8); }
}
@keyframes float {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

#trial-card:hover {
  box-shadow: 0 18px 50px rgba(200,150,70,0.18), 0 0 0 1.5px rgba(200,150,70,0.4);
  border-color: rgba(200,150,70,0.5) !important;
  transform: translateY(-5px);
}

.trial-regular-rate {
  font-size: 10px;
  color: var(--stone);
  font-family: 'DM Mono', monospace;
  letter-spacing: 0.05em;
  margin: 6px 0 4px;
}

/* ── TRIAL INTRO CALLOUT ── */
.trial-intro-callout {
  padding: 9px 12px;
  background: rgba(200,150,70,0.06);
  border: 1px solid rgba(200,150,70,0.18);
  border-left: 2.5px solid var(--amber);
  border-radius: 0 5px 5px 0;
  margin-bottom: 16px;
  font-size: 11.5px;
  color: var(--stone-d);
  line-height: 1.6;
  font-weight: 300;
}

/* ── CREDITS NEVER EXPIRE CHIP ── */
.credits-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  background: rgba(28,26,23,0.04);
  border: 1px solid rgba(28,26,23,0.09);
  border-radius: 100px;
  font-family: 'DM Mono', monospace;
  font-size: 9px;
  color: var(--stone);
  letter-spacing: 0.08em;
  margin-bottom: 16px;
  transition: background 0.2s, border-color 0.2s;
}
.pc:hover .credits-chip {
  background: rgba(200,150,70,0.07);
  border-color: rgba(200,150,70,0.25);
  color: var(--amber);
}

/* ── CREDITS EXPLAINER BOX ── */
.credits-explainer {
  margin-top: 32px;
  padding: 22px 26px;
  background: rgba(255,255,255,0.45);
  border: 1px solid rgba(200,150,70,0.22);
  border-radius: 10px;
  display: flex;
  align-items: flex-start;
  gap: 18px;
  transition: background 0.3s, border-color 0.3s, transform 0.3s, box-shadow 0.3s;
}
.credits-explainer:hover {
  background: rgba(255,255,255,0.7);
  border-color: rgba(200,150,70,0.38);
  transform: translateY(-2px);
  box-shadow: 0 12px 36px rgba(200,150,70,0.08);
}
.credits-explainer-icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(200,150,70,0.1);
  border: 1px solid rgba(200,150,70,0.28);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s, transform 0.3s;
}
.credits-explainer:hover .credits-explainer-icon {
  background: rgba(200,150,70,0.18);
  transform: rotate(15deg) scale(1.08);
}
.credits-explainer strong { color: var(--ink); font-weight: 400; }

/* ── PRICING PACK HOVER ── */
.pc.pack-50:hover,
.pc.pack-100-wrap:hover {
  box-shadow: 0 20px 56px rgba(28,26,23,0.1);
}

/* ═══════════════════════════════════════════════
   PROOF SECTION UPGRADES
   ═══════════════════════════════════════════════ */

/* Animated ambient orb in proof-lead */
.proof-lead-orb {
  position: absolute;
  top: -60px;
  right: -80px;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(200,150,90,0.18) 0%, transparent 68%);
  pointer-events: none;
  z-index: 0;
  animation: proof-orb-drift 8s ease-in-out infinite alternate;
}
@keyframes proof-orb-drift {
  from { transform: translate(0, 0) scale(1); opacity: 0.5; }
  to   { transform: translate(-28px, 18px) scale(1.14); opacity: 1; }
}

/* Stats row inside proof-lead */
.proof-stats-row {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  font-family: 'DM Mono', monospace;
  font-size: 10.5px;
  color: var(--stone);
  letter-spacing: 0.06em;
}
.proof-stat-item {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
}
.proof-stat-item .count-up {
  font-family: 'Cormorant Garamond', serif;
  font-size: 22px;
  font-weight: 300;
  color: var(--ink);
  line-height: 1;
}
.proof-stat-label { font-size: 10px; color: var(--stone); letter-spacing: 0.1em; }
.proof-stat-sep   { color: rgba(28,26,23,0.2); }

/* Proof grid perspective for 3D tilt */
.proof-grid { perspective: 900px; }

/* Mini browser frame — Samples card */
.proof-mini-browser {
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid rgba(28,26,23,0.1);
  margin-bottom: 14px;
  background: var(--parchment);
  flex-shrink: 0;
}
.proof-mini-chrome {
  background: rgba(28,26,23,0.05);
  padding: 5px 9px;
  display: flex;
  align-items: center;
  gap: 4px;
  border-bottom: 1px solid rgba(28,26,23,0.07);
}
.proof-mini-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  flex-shrink: 0;
}
.proof-mini-url {
  font-family: 'DM Mono', monospace;
  font-size: 8px;
  color: rgba(28,26,23,0.3);
  margin-left: 4px;
}
.proof-mini-img-wrap {
  overflow: hidden;
  height: 110px;
}
.proof-mini-img {
  width: 100%;
  height: 110px;
  object-fit: cover;
  object-position: top center;
  display: block;
  transition: transform 0.55s ease;
}
.proof-card:hover .proof-mini-img { transform: scale(1.04); }

/* Mini terminal — Workflow card */
.proof-mini-term {
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid rgba(28,26,23,0.12);
  margin-bottom: 14px;
  background: rgba(20,18,15,0.96);
}
.proof-mini-term-bar {
  padding: 5px 9px;
  display: flex;
  align-items: center;
  gap: 4px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.03);
}
.proof-term-lines {
  padding: 10px 13px;
  display: grid;
  gap: 5px;
}
.proof-term-line {
  font-family: 'DM Mono', monospace;
  font-size: 10px;
  color: rgba(242,240,235,0.52);
  line-height: 1.5;
  opacity: 0;
  transform: translateX(-5px);
  transition: opacity 0.28s ease, transform 0.28s ease;
}
.proof-term-line.visible { opacity: 1; transform: translateX(0); }
.proof-term-prompt { color: rgba(200,150,90,0.85); }
.proof-term-ok     { color: rgba(100,200,110,0.85); }
.proof-term-prog   { color: rgba(120,175,245,0.85); }
.proof-term-str    { color: rgba(200,150,90,0.75); }

/* Pricing chip — Pricing card */
.proof-price-chip {
  position: relative;
  border: 1px solid rgba(200,150,70,0.22);
  border-radius: 8px;
  padding: 14px 16px;
  background: rgba(200,150,70,0.05);
  margin-bottom: 14px;
  overflow: hidden;
}
.proof-price-chip-inner {
  display: flex;
  align-items: center;
  gap: 14px;
  position: relative;
  z-index: 1;
}
.proof-price-badge {
  font-family: 'DM Mono', monospace;
  font-size: 8px;
  letter-spacing: 0.18em;
  color: var(--amber);
  background: rgba(200,150,70,0.12);
  border: 1px solid rgba(200,150,70,0.25);
  border-radius: 3px;
  padding: 4px 8px;
  flex-shrink: 0;
}
.proof-price-main {
  font-family: 'Cormorant Garamond', serif;
  font-size: 28px;
  font-weight: 300;
  color: var(--ink);
  line-height: 1;
  display: flex;
  align-items: baseline;
  gap: 5px;
}
.proof-price-unit {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  color: var(--stone-d);
  font-weight: 300;
}
.proof-price-sub {
  font-size: 10.5px;
  color: var(--stone);
  font-family: 'DM Mono', monospace;
  letter-spacing: 0.06em;
  margin-top: 4px;
}
.proof-price-pulse {
  position: absolute;
  inset: 0;
  border-radius: 8px;
  border: 1.5px solid rgba(200,150,70,0.5);
  animation: price-pulse 2.8s ease-in-out infinite;
  pointer-events: none;
}
@keyframes price-pulse {
  0%,100% { opacity: 0.7; transform: scale(1); }
  50%     { opacity: 0;   transform: scale(1.04); }
}

/* Contact pills — Contact card */
.proof-contact-pills {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 6px;
}
.proof-contact-pill {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(28,26,23,0.08);
  border-radius: 6px;
  font-family: 'DM Mono', monospace;
  font-size: 10.5px;
  color: var(--stone-d);
  letter-spacing: 0.04em;
}
.online-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4a7a4a;
  flex-shrink: 0;
  animation: pulse 2s infinite;
  box-shadow: 0 0 0 3px rgba(74,122,74,0.12);
}

/* ═══════════════════════════════════════════════
   TESTIMONIAL SECTION UPGRADES
   ═══════════════════════════════════════════════ */

/* Enlarged card */
.tcard {
  padding: 40px 36px 36px;
}
.tcard::before {
  font-size: 100px;
  top: 12px;
  left: 22px;
}
.tcard-quote {
  font-size: 20px;
  line-height: 1.78;
}

/* tcard-pull slides up after card reveal */
.tcard-pull {
  clip-path: inset(100% 0 0 0);
  transition: clip-path 0.5s 0.42s cubic-bezier(0.16, 1, 0.3, 1);
}
.tcard.on .tcard-pull {
  clip-path: inset(0% 0 0 0);
}

/* Ambient amber glow on each tcard */
.tcard::after {
  content: '';
  position: absolute;
  bottom: -50px;
  left: -50px;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(200,150,90,0.14) 0%, transparent 68%);
  pointer-events: none;
  animation: tcard-orb 6s ease-in-out infinite;
  z-index: 0;
}
@keyframes tcard-orb {
  0%,100% { opacity: 0;   transform: scale(0.88); }
  50%     { opacity: 1;   transform: scale(1.06); }
}

/* Word-by-word reveal spans */
.tcard-word {
  display: inline-block;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity 0.28s ease, transform 0.28s ease;
}
.tcard.on .tcard-word {
  opacity: 1;
  transform: translateY(0);
}

/* Perspective wrapper for tcard tilt */
.test-grid { perspective: 900px; }

/* Test lead stats row */
/* count-up base */
.count-up { display: inline-block; }

/* ── Reduced motion overrides for new elements ── */
@media (prefers-reduced-motion: reduce) {
  .proof-lead-orb,
  .proof-price-pulse,
  .online-dot { animation: none !important; }

  .proof-mini-img { transition: none !important; }

  .proof-term-line { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* ── Mobile overrides for new elements ── */
@media (max-width: 768px) {
  .tcard { padding: 28px 22px 24px; }
  .tcard-quote { font-size: 16px; }
  .tcard::before { font-size: 72px; }
  .proof-lead-orb { display: none !important; }
}

/* ═══════════════════════════════════════════════
   PRICING SECTION UPGRADES
   ═══════════════════════════════════════════════ */

/* Trial card — hero "10 sites" number */
.trial-sites-hero {
  display: flex;
  align-items: baseline;
  gap: 7px;
  margin-bottom: 8px;
}
.trial-sites-num {
  font-family: 'Cormorant Garamond', serif;
  font-size: 68px;
  font-weight: 300;
  line-height: 1;
  color: var(--ink);
}
.trial-sites-label {
  font-family: 'Cormorant Garamond', serif;
  font-size: 26px;
  font-weight: 300;
  color: var(--stone);
  letter-spacing: -0.01em;
}

/* Trial card — price secondary row */
.trial-price-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}
.trial-total-price {
  font-family: 'Cormorant Garamond', serif;
  font-size: 18px;
  font-weight: 300;
  color: var(--stone-d);
}
.trial-divider-v {
  width: 1px;
  height: 13px;
  background: rgba(28,26,23,0.18);
  flex-shrink: 0;
}
.trial-per-site {
  font-size: 10.5px;
  color: var(--stone);
  font-family: 'DM Mono', monospace;
  letter-spacing: 0.07em;
}

/* "BEST VALUE" badge pulse */
.best-value-badge {
  animation: best-value-pulse 2.8s ease-in-out infinite;
}
@keyframes best-value-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(200,150,70,0.45); }
  50%       { box-shadow: 0 0 0 6px rgba(200,150,70,0); }
}

/* Ambient orb inside featured card */
.pc-feat-orb {
  position: absolute;
  bottom: -100px;
  right: -100px;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(200,150,90,0.18) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
  animation: pc-orb-drift 9s ease-in-out infinite alternate;
}
@keyframes pc-orb-drift {
  from { transform: translate(0, 0) scale(1);    opacity: 0.6; }
  to   { transform: translate(-22px, -16px) scale(1.18); opacity: 1; }
}

/* Ensure featured card children sit above orb */
.pack-100-wrap > *:not(.pc-feat-orb) { position: relative; z-index: 1; }

/* 3D tilt context for price grid */
.price-grid { perspective: 1000px; }

/* Mobile: disable orb and tilt */
@media (max-width: 768px) {
  .pc-feat-orb { display: none !important; }
  .best-value-badge { animation: none; }
  .trial-sites-num { font-size: 52px; }
  .trial-sites-label { font-size: 20px; }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .pc-feat-orb,
  .best-value-badge { animation: none !important; }
}

/* ═══════════════════════════════════════════════
   SEO FOUNDATION SECTION
   ═══════════════════════════════════════════════ */

.seo-strip {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(0, 1.4fr);
  gap: 64px;
  align-items: start;
}

.seo-checklist {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
}

.seo-check-item {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 14px 16px 14px 0;
  border-bottom: 1px solid rgba(28,26,23,0.07);
  transition: background 0.2s;
}
.seo-check-item:nth-child(odd) {
  padding-right: 20px;
  border-right: 1px solid rgba(28,26,23,0.07);
}
.seo-check-item:nth-last-child(-n+2) {
  border-bottom: none;
}

.seo-check-icon {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(200,150,70,0.1);
  border: 1px solid rgba(200,150,70,0.28);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
  transition: background 0.2s, transform 0.2s;
}

.seo-check-item:hover .seo-check-icon {
  background: rgba(200,150,70,0.2);
  transform: scale(1.1);
}

.seo-check-label {
  font-size: 13px;
  font-weight: 400;
  color: var(--ink);
  margin-bottom: 3px;
  font-family: 'DM Sans', sans-serif;
}

.seo-check-sub {
  font-size: 11.5px;
  color: var(--stone);
  line-height: 1.55;
  font-weight: 300;
}

@media (max-width: 900px) {
  .seo-strip { grid-template-columns: 1fr; gap: 36px; }
}
@media (max-width: 560px) {
  .seo-checklist { grid-template-columns: 1fr; }
  .seo-check-item:nth-child(odd) {
    padding-right: 0;
    border-right: none;
  }
  .seo-check-item:nth-last-child(-n+2) {
    border-bottom: 1px solid rgba(28,26,23,0.07);
  }
  .seo-check-item:last-child {
    border-bottom: none;
  }
}

/* feat-seo-row responsive */
@media (max-width: 768px) {
  .feat-seo-row { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 480px) {
  .feat-seo-row { grid-template-columns: 1fr !important; }
}
