/* ============================================================
   יצירת דמויות ואלמנטים בעזרת AI — Design System
   ============================================================ */

@font-face {
  font-family: 'OH Yael';
  src: url('data:font/woff2;base64,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') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: block;
}

:root {
  /* backgrounds */
  --cream:        #FAF7F2;
  --cream-mid:    #F2E8DF;
  --surface:      #FFFFFF;
  --border:       #EDE4DB;

  /* pink family */
  --pink:         #F1D9D9;
  --pink-deep:    #D9A8A8;

  /* brown / gold family */
  --champagne:    #BF978F;
  --gold:         #C9A86C;
  --brown:        #2B1F17;
  --brown-mid:    #6B4E3D;
  --brown-soft:   #8B6357;

  --text:         #2B1F17;
  --text-muted:   #8B6357;

  --font-heading: 'Heebo', sans-serif;
  --font-body:    'Heebo', sans-serif;
  --font-script:  'OH Yael', cursive;

  --radius-lg: 28px;
  --radius-md: 20px;
  --radius-sm: 14px;

  --shadow-soft: 0 20px 50px -20px rgba(43,31,23,0.22);
  --shadow-card: 0 10px 30px -12px rgba(43,31,23,0.16);

  --ease-out: cubic-bezier(.16,1,.3,1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; }
}

body {
  margin: 0;
  background: var(--cream);
  color: var(--text);
  font-family: var(--font-body);
  font-size: 17px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; }

/* skip link — hidden until keyboard focus */
.skip-link {
  position: absolute; top: -100px; right: 12px; z-index: 10000;
  background: var(--brown); color: #fff; padding: 12px 24px;
  font-size: 15px; font-weight: 700; border-radius: 0 0 10px 10px;
  text-decoration: none; transition: top .25s var(--ease-out);
}
.skip-link:focus { top: 0; }

body { padding-top: 46px; }

.promo-bar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 700; display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
  gap: 10px 16px; padding: 13px 20px; text-align: center;
  background: linear-gradient(90deg, #C0533F 0%, #D98A3D 50%, #C0533F 100%);
  background-size: 220% 100%; animation: promo-shimmer 6s linear infinite;
  color: #fff; font-family: var(--font-heading); font-weight: 800; font-size: 0.95rem; letter-spacing: 0.01em;
}
@keyframes promo-shimmer { to { background-position: 220% 0; } }
@media (prefers-reduced-motion: reduce) { .promo-bar { animation: none; } }
.promo-bar-emoji { font-size: 1.15rem; }
.promo-bar-code {
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(255,255,255,0.18); border: 1px solid rgba(255,255,255,0.35);
  border-radius: 999px; padding: 4px 14px; font-size: 0.88rem;
}
@media (max-width: 640px) {
  .promo-bar { font-size: 0.8rem; padding: 9px 14px; gap: 6px 10px; }
  body { padding-top: 64px; }
}

:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; border-radius: 4px; }

.container { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.container-narrow { max-width: 780px; }

.section { position: relative; padding: 110px 0; }
@media (max-width: 768px) { .section { padding: 72px 0; } }

.section-eyebrow {
  font-family: var(--font-script);
 
  font-weight: 500;
  letter-spacing: 0.01em;
  color: var(--champagne);
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  margin: 0 0 8px;
  line-height: 1.3;
  text-shadow: 0 2px 14px rgba(191,151,143,0.2);
}

.section-title {
  font-family: var(--font-heading);
  font-weight: 900;
  font-size: clamp(2.1rem, 3.8vw, 3.2rem);
  line-height: 1.2;
  color: var(--brown);
  margin: 0 0 20px;
  letter-spacing: -0.01em;
}
.section-title-script {
  font-family: var(--font-script);
 
  font-weight: 500;
  color: var(--champagne);
}
.section-lead {
  font-size: 1.18rem;
  font-weight: 600;
  color: var(--text);
  max-width: 640px;
  margin: 0 0 20px;
}
.center { text-align: center; margin-left: auto; margin-right: auto; }

.trust-badge {
  display: inline-flex; align-items: center; gap: 12px;
  background: linear-gradient(120deg, var(--champagne) 0%, var(--gold) 60%, var(--pink) 130%);
  color: #fff;
  font-weight: 800; font-size: 1rem;
  padding: 13px 26px; border-radius: 999px; margin-bottom: 26px;
  box-shadow: 0 18px 38px -14px rgba(191,151,143,0.55);
  animation: badge-float 3.4s ease-in-out infinite;
}
.trust-badge .badge-icon {
  display: flex; align-items: center; justify-content: center;
  width: 26px; height: 26px; background: rgba(255,255,255,0.85); border-radius: 50%; flex-shrink: 0;
}
.trust-badge svg { width: 15px; height: 15px; color: var(--brown-mid); }
@keyframes badge-float { 0%,100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-8px) rotate(1deg); } }
@media (prefers-reduced-motion: reduce) { .trust-badge { animation: none; } }

/* ============================================================
   Reveal-on-scroll (JS toggles .in-view)
   ============================================================ */
[data-reveal] { opacity: 0; transform: translateY(64px) scale(0.98); transition: opacity 1.1s var(--ease-out), transform 1.1s var(--ease-out); }
[data-reveal].in-view { opacity: 1; transform: translateY(0) scale(1); }
[data-reveal-stagger] > * { opacity: 0; transform: translateY(56px) scale(0.94); transition: opacity 0.85s var(--ease-out), transform 0.85s var(--ease-out); }
[data-reveal-stagger].in-view > * { opacity: 1; transform: translateY(0) scale(1); }
@media (prefers-reduced-motion: reduce) {
  [data-reveal], [data-reveal-stagger] > * { opacity: 1 !important; transform: none !important; }
}

/* ============================================================
   Buttons
   ============================================================ */
.btn {
  display: inline-flex; align-items: center; gap: 12px;
  padding: 19px 34px; border-radius: 14px;
  font-weight: 800; font-size: 1.08rem; border: none;
  transition: transform 0.25s var(--ease-out), box-shadow 0.25s var(--ease-out), background 0.25s var(--ease-out);
  white-space: nowrap;
}
.btn svg { transform: scaleX(-1); flex-shrink: 0; transition: transform 0.3s var(--ease-out); }
.btn-primary {
  background: linear-gradient(135deg, var(--champagne) 0%, var(--gold) 100%);
  color: #fff;
  box-shadow: 0 14px 30px -10px rgba(191,151,143,0.55);
}
.btn-primary:hover { background: linear-gradient(135deg, #A87F76 0%, #B8935A 100%); transform: translateY(-3px); box-shadow: 0 20px 40px -12px rgba(191,151,143,0.65); }
.btn-primary:hover svg { transform: scaleX(-1) translateX(-5px); }
.btn-lg { padding: 22px 40px; font-size: 1.2rem; }

.btn-text {
  display: inline-flex; align-items: center; gap: 10px;
  color: var(--brown-mid); font-weight: 700; font-size: 1rem;
  padding: 12px 6px; transition: color .2s var(--ease-out), gap .2s var(--ease-out);
}
.btn-text:hover { color: var(--champagne); gap: 14px; }

.btn-beam { position: relative; overflow: hidden; }
.btn-beam::before {
  content: "";
  position: absolute; inset: -2px; border-radius: inherit; padding: 2px;
  background: conic-gradient(from var(--angle, 0deg), transparent 0%, #fff 15%, transparent 30%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: beam-spin 3.5s linear infinite;
  pointer-events: none;
  opacity: .8;
}
@property --angle { syntax: '<angle>'; initial-value: 0deg; inherits: false; }
@keyframes beam-spin { to { --angle: 360deg; } }
/* fallback for browsers without @property/mask-composite support (JS-detected) */
.no-beam-anim.btn-beam::before { animation: none; opacity: .55; }

.price-badge { display: flex; flex-direction: column; align-items: center; line-height: 1.2; }
.price-num { font-family: var(--font-heading); font-weight: 900; font-size: 1.9rem; color: var(--brown); }
.price-note { font-size: 0.82rem; color: var(--text-muted); }
.price-badge-lg .price-num { font-size: 2.4rem; }

/* ============================================================
   HERO
   ============================================================ */
.hero { position: relative; min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; overflow: hidden; padding-bottom: 30px; }

.hero-bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.blob { position: absolute; border-radius: 50%; filter: blur(70px); opacity: 0.55; will-change: transform; animation: blob-float 22s ease-in-out infinite; }
.blob-1 { width: 480px; height: 480px; top: -160px; right: -120px; background: radial-gradient(circle at center, var(--pink) 0%, transparent 70%); }
.blob-2 { width: 420px; height: 420px; bottom: -140px; left: -100px; background: radial-gradient(circle at center, var(--gold) 0%, transparent 70%); animation-delay: -8s; }
.blob-3 { width: 360px; height: 360px; top: 30%; left: 20%; background: radial-gradient(circle at center, var(--pink-deep) 0%, transparent 70%); animation-delay: -14s; opacity: 0.35; }
@keyframes blob-float { 0%,100% { transform: translate(0,0) scale(1); } 33% { transform: translate(-30px,40px) scale(1.08); } 66% { transform: translate(25px,-30px) scale(0.94); } }
@media (prefers-reduced-motion: reduce) { .blob { animation: none; } }

.hero-spotlight {
  position: absolute; z-index: 1; pointer-events: none; width: 640px; height: 640px;
  left: 50%; top: 40%; transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(255,255,255,0.55) 0%, rgba(201,168,108,0.22) 35%, transparent 70%);
  mix-blend-mode: soft-light; opacity: 0; transition: opacity 0.4s var(--ease-out);
  will-change: transform, opacity;
}
.hero:hover .hero-spotlight { opacity: 1; }
@media (hover: none) { .hero-spotlight { display: none; } }

.noise {
  position: absolute; inset: 0; opacity: 0.045; mix-blend-mode: multiply; pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.8 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.hero-nav { position: relative; z-index: 2; padding: 22px 24px 0; display: flex; justify-content: center; }
.nav-logo { height: 150px; width: auto; transition: transform 0.3s var(--ease-out); mix-blend-mode: multiply; }
.nav-logo:hover { transform: scale(1.05); }
@media (max-width: 640px) { .nav-logo { height: 110px; } }

.hero-inner {
  position: relative; z-index: 2; flex: 1; max-width: 1180px; margin: 0 auto; padding: 30px 24px;
  display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 40px; align-items: center; width: 100%;
}
@media (max-width: 960px) { .hero-inner { grid-template-columns: 1fr; padding-top: 10px; gap: 10px; } }

.eyebrow { font-family: var(--font-script); color: var(--champagne); font-size: clamp(3rem, 6vw, 4.2rem); margin: 0 0 14px; line-height: 1.2; }
.hero-title { margin: 0 0 22px; font-family: var(--font-heading); font-weight: 900; line-height: 1.08; }
.gradient-text {
  display: block; font-size: clamp(2.6rem, 6.4vw, 4.6rem); color: var(--brown);
  background: linear-gradient(90deg, var(--brown) 0%, var(--brown-mid) 50%, var(--brown) 100%);
  background-size: 260% 100%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
  animation: gradient-flow 8s linear infinite;
}
@keyframes gradient-flow { to { background-position: 260% 0; } }
.hero-title-sub {
  display: block; font-family: var(--font-script); font-weight: 500;
  font-size: clamp(1.9rem, 4.2vw, 2.8rem); color: var(--champagne); margin-top: 6px;
}
.hero-sub { font-size: 1.12rem; color: var(--text-muted); max-width: 540px; margin: 0 0 32px; }

.hero-cta-row { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-bottom: 18px; }
.trust-row { display: flex; flex-wrap: wrap; gap: 12px 22px; }
.trust-item { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--brown-soft); font-weight: 600; }
.trust-icon {
  width: 26px; height: 26px; border-radius: 50%; flex-shrink: 0;
  background: linear-gradient(135deg, rgba(191,151,143,.16), rgba(201,168,108,.16));
  border: 1px solid rgba(191,151,143,.3); display: flex; align-items: center; justify-content: center;
}
.trust-icon svg { width: 13px; height: 13px; color: var(--champagne); }

.hero-visual { position: relative; perspective: 1200px; display: flex; align-items: center; justify-content: center; min-height: 340px; }
.hero-visual-glow { position: absolute; inset: -6%; background: radial-gradient(ellipse at center, var(--pink) 0%, transparent 65%); filter: blur(44px); z-index: 0; opacity: 0.85; }
.hero-char-row {
  position: relative; z-index: 1; display: flex; align-items: flex-end; justify-content: center;
  gap: clamp(22px, 3.4vw, 46px); width: 100%; max-width: 700px; padding-bottom: 6px;
  transition: transform 0.15s ease-out; will-change: transform;
}
.hero-char-wrap { position: relative; display: flex; align-items: flex-end; transition: transform 0.3s var(--ease-out); }
.hero-char-wrap:hover { transform: translateY(-6px); }
.hero-char {
  position: relative; width: auto; height: clamp(290px, 38vw, 490px); object-fit: contain;
  filter: drop-shadow(0 20px 22px rgba(43,31,23,0.18));
}
.hero-char-center { height: clamp(310px, 41vw, 530px); }
@media (max-width: 640px) {
  .hero-char-row { gap: 16px; }
  .hero-char { height: 240px; }
  .hero-char-center { height: 275px; }
}

.scroll-cue { position: relative; z-index: 2; display: flex; justify-content: center; padding-bottom: 4px; }
.scroll-cue span { width: 26px; height: 42px; border: 2px solid var(--brown-soft); border-radius: 20px; position: relative; opacity: 0.5; }
.scroll-cue span::before {
  content: ""; position: absolute; top: 8px; right: 50%; transform: translateX(50%);
  width: 4px; height: 8px; border-radius: 2px; background: var(--brown-soft);
  animation: scroll-cue-move 1.8s ease-in-out infinite;
}
@keyframes scroll-cue-move { 0%,100% { transform: translate(50%,0); opacity:1; } 60% { transform: translate(50%,14px); opacity:0; } }
@media (prefers-reduced-motion: reduce) { .scroll-cue span::before { animation: none; } }

/* ============================================================
   REFRAME (problem → solution rows)
   ============================================================ */
.reframe-list { list-style: none; margin: 40px 0 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.reframe-item {
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: stretch;
  border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-card);
  transition: transform .3s var(--ease-out), box-shadow .3s var(--ease-out);
}
.reframe-item:hover { transform: translateY(-4px); box-shadow: 0 24px 46px -18px rgba(43,31,23,0.28); }
.reframe-before-half {
  display: flex; align-items: center; justify-content: flex-end; text-align: right;
  background: var(--cream-mid); padding: 22px 26px;
}
.reframe-after-half {
  display: flex; align-items: center; justify-content: flex-start; text-align: left;
  background: linear-gradient(135deg, var(--champagne) 0%, var(--gold) 100%); padding: 22px 26px;
}
.reframe-divider {
  display: flex; align-items: center; justify-content: center; background: var(--surface); width: 56px;
}
.reframe-arrow-badge {
  width: 34px; height: 34px; border-radius: 50%; background: var(--brown); color: #fff; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center; font-size: 1rem;
}
.reframe-before { color: var(--text-muted); font-size: 0.96rem; }
.reframe-after { color: #fff; font-weight: 700; font-size: 1.02rem; }
@media (max-width: 700px) {
  .reframe-item { grid-template-columns: 1fr; }
  .reframe-divider { width: 100%; padding: 6px 0; }
  .reframe-arrow-badge { transform: rotate(90deg); }
  .reframe-before-half, .reframe-after-half { justify-content: center; text-align: center; }
}

/* ============================================================
   FEATURE / PERSONA CARDS (shared)
   ============================================================ */
.features-grid, .persona-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 50px; }
.persona-grid { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
@media (max-width: 900px) { .features-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 620px) { .features-grid, .persona-grid { grid-template-columns: 1fr; } }

.feature-card {
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-md);
  padding: 30px 26px; box-shadow: var(--shadow-card);
  transition: box-shadow 0.35s var(--ease-out), background-color 0.35s var(--ease-out), border-color 0.35s var(--ease-out);
  will-change: transform;
}
.feature-card:hover { background: var(--pink); border-color: var(--pink-deep); box-shadow: 0 26px 50px -18px rgba(43,31,23,0.22); }
.feature-icon {
  display: flex; align-items: center; justify-content: center; width: 62px; height: 62px; border-radius: 50%;
  color: #fff; margin-bottom: 18px; box-shadow: 0 12px 26px -10px rgba(43,31,23,0.4);
  transition: transform 0.35s var(--ease-out), box-shadow 0.35s var(--ease-out);
}
.feature-icon svg { width: 27px; height: 27px; }
.feature-card:hover .feature-icon { transform: scale(1.1) rotate(-6deg); box-shadow: 0 16px 32px -10px rgba(43,31,23,0.5); }
.feature-card:nth-child(4n+1) .feature-icon { background: linear-gradient(135deg, var(--pink-deep) 0%, var(--champagne) 100%); }
.feature-card:nth-child(4n+2) .feature-icon { background: linear-gradient(135deg, var(--gold) 0%, var(--champagne) 100%); }
.feature-card:nth-child(4n+3) .feature-icon { background: linear-gradient(135deg, var(--brown-mid) 0%, var(--gold) 100%); }
.feature-card:nth-child(4n+4) .feature-icon { background: linear-gradient(135deg, var(--champagne) 0%, var(--pink-deep) 100%); }
.feature-card h3 { font-family: var(--font-heading); font-weight: 700; font-size: 1.22rem; color: var(--brown); margin: 0 0 8px; }
.feature-card p { color: var(--text-muted); margin: 0; font-size: 0.97rem; line-height: 1.6; }

/* ============================================================
   GALLERY
   ============================================================ */
.gallery-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 50px; }
@media (max-width: 900px) { .gallery-grid { display: none; } }
.gallery-cell {
  border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-card);
  transition: transform 0.4s var(--ease-out), box-shadow 0.4s var(--ease-out);
}
.gallery-cell:hover { transform: translateY(-8px); box-shadow: 0 26px 50px -18px rgba(43,31,23,0.28); }
.gallery-cell img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.55s var(--ease-out); }
.gallery-cell:hover img { transform: scale(1.07); }
.gallery-cell.tall { grid-row: span 2; aspect-ratio: 3/5; }
.gallery-cell.square { aspect-ratio: 1/1; }

.gallery-mobile { display: none; }
@media (max-width: 900px) { .gallery-mobile { display: block; margin-top: 40px; } }
.gallery-scroll-x { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; padding-bottom: 4px; }
.gallery-scroll-x::-webkit-scrollbar { display: none; }
.gallery-scroll-cell { flex: 0 0 68vw; max-width: 260px; scroll-snap-align: start; border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-card); aspect-ratio: 3/4; }
.gallery-scroll-cell img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gallery-hint { text-align: center; font-size: 12px; color: var(--text-muted); opacity: .6; margin-top: 10px; }

/* ============================================================
   SCROLL STORY — same character, different poses, moving like video
   ============================================================ */
.scrollstory { position: relative; height: 280vh; background: var(--cream-mid); overflow: hidden; }
.scrollstory-sticky {
  position: sticky; top: 0; height: 100vh; height: 100dvh; overflow: hidden;
  display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px;
}
.scrollstory-bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.scrollstory-bg .blob { opacity: 0.85; }
.scrollstory-bg .blob-1 { width: 640px; height: 640px; }
.scrollstory-bg .blob-2 { width: 560px; height: 560px; }
.scrollstory-bg .blob-3 { width: 460px; height: 460px; opacity: 0.5; }

.scrollstory-stage {
  position: relative; z-index: 1; width: min(94vw, 780px); height: min(90vh, 860px);
  margin-bottom: 10px; will-change: transform;
}
@media (max-width: 640px) {
  .scrollstory-stage { width: min(96vw, 520px); height: min(64vh, 560px); }
}
.scrollstory-stage-glow {
  position: absolute; inset: 2%; border-radius: 50%;
  background: radial-gradient(ellipse at center, var(--pink) 0%, transparent 70%);
  filter: blur(40px); opacity: 0.95; z-index: 0;
}
.ss-frame {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: bottom center;
  opacity: 0; z-index: 1; filter: drop-shadow(0 24px 30px rgba(43,31,23,0.2));
  will-change: opacity, transform;
}
.ss-frame:first-child { opacity: 1; }

/* signature continuous motion per pose — this is what makes it read as "moving like a video" */
.ss-pose-neutral { animation: ss-sway 3.2s ease-in-out infinite; }
@keyframes ss-sway { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-7px) rotate(-0.6deg); } }

.ss-pose-jump { animation: ss-jump 1.1s cubic-bezier(.45,0,.55,1) infinite; }
@keyframes ss-jump {
  0%   { transform: translateY(0) scale(1, 1); }
  22%  { transform: translateY(-34px) scale(1.02, 1.05); }
  38%  { transform: translateY(-40px) scale(1.03, 1.06); }
  55%  { transform: translateY(-30px) scale(1.02, 1.04); }
  78%  { transform: translateY(0) scale(1.01, 0.97); }
  100% { transform: translateY(0) scale(1, 1); }
}

.ss-pose-cry { animation: ss-tremble 0.42s ease-in-out infinite; }
@keyframes ss-tremble {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  25% { transform: translateY(1px) rotate(-1.3deg); }
  50% { transform: translateY(-2px) rotate(0deg); }
  75% { transform: translateY(1px) rotate(1.3deg); }
}
@media (prefers-reduced-motion: reduce) {
  .ss-pose-neutral, .ss-pose-jump, .ss-pose-cry { animation: none; }
}

.scrollstory-text {
  position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center;
  max-width: 640px; margin: 0 auto; padding: 0 28px; text-align: center; will-change: transform; transition: transform 0.2s linear;
}
.ss-progress { display: flex; align-items: center; justify-content: center; gap: 9px; margin-top: 22px; }
.ss-progress span { width: 8px; height: 8px; border-radius: 50%; background: var(--pink-deep); opacity: .5; transition: opacity 0.3s var(--ease-out), transform 0.3s var(--ease-out), width 0.3s var(--ease-out); }
.ss-progress span.active { background: var(--champagne); opacity: 1; width: 26px; border-radius: 5px; }
@media (prefers-reduced-motion: reduce) { .ss-progress span { transition: none; } }
.ss-badge {
  display: inline-flex; align-items: center; gap: 10px; background: var(--surface); color: var(--brown-mid);
  font-family: var(--font-heading); font-weight: 800; font-size: clamp(1.05rem, 2.2vw, 1.4rem);
  padding: 11px 24px; border-radius: 999px; margin-bottom: 18px; box-shadow: var(--shadow-card);
  animation: ss-badge-pulse 2.6s ease-in-out infinite;
}
@keyframes ss-badge-pulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.045); } }
@media (prefers-reduced-motion: reduce) { .ss-badge { animation: none; } }
.scrollstory-text h2 { font-family: var(--font-heading); font-weight: 800; color: var(--brown); font-size: clamp(1.8rem, 4vw, 2.8rem); line-height: 1.22; margin: 0 0 14px; }
.scrollstory-text p { color: var(--brown-soft); font-weight: 500; font-size: clamp(1rem, 1.6vw, 1.15rem); line-height: 1.7; max-width: 520px; margin: 0 auto; }

/* ============================================================
   TRY IT — click-to-transform interactive character
   ============================================================ */
.try-it-widget { display: flex; flex-direction: column; align-items: center; margin-top: 46px; }
.try-it-stage { position: relative; width: min(70vw, 320px); height: min(48vh, 380px); margin-bottom: 24px; }
.try-it-glow {
  position: absolute; inset: 4%; border-radius: 50%;
  background: radial-gradient(ellipse at center, var(--pink) 0%, transparent 70%);
  filter: blur(32px); opacity: 0.9; z-index: 0; transition: background 0.3s var(--ease-out);
}
.try-it-img {
  position: relative; z-index: 1; width: 100%; height: 100%; object-fit: contain; object-position: bottom center;
  filter: drop-shadow(0 20px 26px rgba(43,31,23,0.2));
  transition: transform 0.35s cubic-bezier(.34,1.56,.64,1), opacity 0.2s ease;
}
.try-it-img.is-changing { transform: scale(0.82) rotate(-4deg); opacity: 0.55; }
.try-it-btn {
  background: var(--surface); border: 1.5px solid var(--border); color: var(--brown);
  font-family: var(--font-heading); font-weight: 700; font-size: 1rem;
  padding: 15px 30px; border-radius: 999px; box-shadow: var(--shadow-card);
  transition: transform 0.25s var(--ease-out), box-shadow 0.25s var(--ease-out), background 0.25s var(--ease-out);
}
.try-it-btn:hover { background: var(--pink); transform: translateY(-3px); box-shadow: 0 20px 40px -16px rgba(43,31,23,0.22); }
.try-it-btn:active { transform: translateY(0) scale(0.97); }
.try-it-dots { display: flex; gap: 9px; margin-top: 20px; }
.try-it-dots span { width: 8px; height: 8px; border-radius: 50%; background: var(--pink-deep); opacity: 0.5; transition: opacity 0.3s, width 0.3s, border-radius 0.3s; }
.try-it-dots span.active { background: var(--champagne); opacity: 1; width: 22px; border-radius: 5px; }

/* ============================================================
   FLOATING SCROLL COMPANION — rides down the page as you scroll
   ============================================================ */
.scroll-companion {
  position: fixed; z-index: 400; left: 18px; top: 12vh; width: 76px; height: 76px; pointer-events: none;
  will-change: transform; animation: companion-bob 3.4s ease-in-out infinite;
  border-radius: 50%; padding: 5px; background: var(--surface);
  box-shadow: 0 10px 24px -6px rgba(43,31,23,0.28), 0 0 0 3px var(--pink);
}
.scroll-companion img { width: 100%; height: 100%; display: block; object-fit: cover; border-radius: 50%; }
@keyframes companion-bob { 0%,100% { margin-top: 0; } 50% { margin-top: -10px; } }
@media (prefers-reduced-motion: reduce) { .scroll-companion { animation: none; } }
@media (max-width: 900px) { .scroll-companion { display: none; } }

/* ============================================================
   EMOTIONS — same character, every expression
   ============================================================ */
.emotions { position: relative; background: var(--cream-mid); overflow: hidden; }
.emotions-bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.emotions-bg .blob-1 { top: -120px; right: -100px; }
.emotions-bg .blob-2 { bottom: -140px; left: -100px; }
.emotions .container { position: relative; z-index: 1; }
.emotions-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; margin-top: 50px; }
@media (max-width: 760px) { .emotions-grid { grid-template-columns: 1fr; max-width: 320px; margin-left: auto; margin-right: auto; } }
.emotion-card {
  position: relative; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg);
  padding: 30px 20px 24px; text-align: center; box-shadow: var(--shadow-card); overflow: hidden;
  transition: box-shadow 0.35s var(--ease-out), transform 0.35s var(--ease-out);
}
.emotion-card:hover { box-shadow: 0 26px 50px -18px rgba(43,31,23,0.24); }
.emotion-card img { width: 100%; height: 260px; object-fit: contain; object-position: bottom center; margin-bottom: 14px; filter: drop-shadow(0 16px 20px rgba(43,31,23,0.16)); }
.emotion-tag {
  display: inline-flex; align-items: center; gap: 6px; background: var(--pink); color: var(--brown-mid);
  font-family: var(--font-heading); font-weight: 800; font-size: 1rem; padding: 8px 20px; border-radius: 999px;
}

/* ============================================================
   BONUSES
   ============================================================ */
.bonus-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 24px; margin-top: 50px; }
.bonus-card {
  position: relative; background: linear-gradient(160deg, var(--surface) 0%, var(--pink) 160%);
  border: 1px solid var(--border); border-radius: var(--radius-md); padding: 30px 26px; box-shadow: var(--shadow-card);
  transition: transform 0.35s var(--ease-out), box-shadow 0.35s var(--ease-out);
}
.bonus-card:hover { transform: translateY(-8px); box-shadow: 0 30px 55px -20px rgba(43,31,23,0.26); }
.bonus-icon {
  display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%;
  background: var(--gold); color: #fff; margin-bottom: 14px; transition: transform 0.35s var(--ease-out);
}
.bonus-icon svg { width: 22px; height: 22px; }
.bonus-card:hover .bonus-icon { transform: scale(1.12) rotate(8deg); }
.bonus-tag { display: block; font-size: 0.76rem; font-weight: 700; letter-spacing: 0.08em; color: var(--gold); text-transform: uppercase; margin-bottom: 8px; }
.bonus-card h3 { font-family: var(--font-heading); font-weight: 700; font-size: 1.2rem; color: var(--brown); margin: 0 0 8px; }
.bonus-card p { color: var(--text-muted); margin: 0; line-height: 1.6; font-size: .96rem; }

/* ============================================================
   TESTIMONIALS
   ============================================================ */
.testimonials { background: var(--cream-mid); overflow: hidden; }
.testi-marquee {
  margin-top: 50px; display: flex; flex-direction: column; gap: 20px; overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}
.testi-track { display: flex; gap: 20px; width: max-content; animation: marquee-rtl 40s linear infinite; }
.testi-track-2 { animation-name: marquee-ltr; animation-duration: 46s; }
.testi-marquee:hover .testi-track { animation-play-state: paused; }
@keyframes marquee-rtl { from { transform: translateX(0); } to { transform: translateX(50%); } }
@keyframes marquee-ltr { from { transform: translateX(50%); } to { transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { .testi-track { animation: none; } .testi-marquee { overflow-x: auto; } }
.testi-card {
  margin: 0; flex: 0 0 auto; width: 250px; background: var(--surface); border-radius: var(--radius-md);
  overflow: hidden; box-shadow: var(--shadow-card); padding: 8px;
  transition: transform 0.3s var(--ease-out), box-shadow 0.3s var(--ease-out);
}
.testi-card:hover { transform: translateY(-8px) scale(1.04); box-shadow: 0 30px 55px -18px rgba(43,31,23,0.32); z-index: 2; position: relative; }
.testi-card img { width: 100%; height: auto; display: block; border-radius: calc(var(--radius-md) - 6px); }
@media (max-width: 640px) { .testi-card { width: 190px; } }

/* ============================================================
   FAQ
   ============================================================ */
.faq-list { display: flex; flex-direction: column; gap: 14px; margin-top: 30px; }
.faq-item { background: var(--surface); border-radius: var(--radius-sm); box-shadow: var(--shadow-card); overflow: hidden; transition: background-color 0.3s var(--ease-out); }
.faq-item:hover { background: var(--pink); }
.faq-q { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px; background: none; border: none; padding: 23px 26px; font-size: 1.06rem; font-weight: 700; color: var(--brown); text-align: right; }
.faq-icon {
  flex-shrink: 0; width: 32px; height: 32px; display: flex; align-items: center; justify-content: center;
  border-radius: 50%; background: var(--gold); color: #fff; font-size: 1.2rem;
  transition: transform 0.35s var(--ease-out), background-color 0.3s var(--ease-out);
}
.faq-item.open .faq-icon { transform: rotate(45deg); background: var(--brown); }
.faq-a { max-height: 0; overflow: hidden; transition: max-height 0.4s var(--ease-out); }
.faq-a p { margin: 0; padding: 0 24px 24px; color: var(--text-muted); }

/* ============================================================
   FINAL CTA
   ============================================================ */
.final-cta { text-align: center; overflow: hidden; background: linear-gradient(150deg, #241a13 0%, var(--brown) 55%, #241a13 100%); }
.final-cta .section-eyebrow { color: var(--pink); }
.final-cta .section-title { color: #fff; }
.final-cta .section-lead { margin: 0 auto 40px; color: rgba(255,255,255,.72); }
.final-bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: .5; }
.final-bg .blob-1 { top: -100px; right: -80px; }
.final-bg .blob-2 { bottom: -120px; left: -80px; }
.final-cta .container { position: relative; z-index: 1; }
.final-cta-row { display: flex; flex-direction: column; align-items: center; gap: 22px; }
.final-price-card {
  display: inline-flex; flex-direction: column; align-items: center;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); border-radius: 24px;
  padding: 26px 46px; backdrop-filter: blur(8px); margin-bottom: 6px;
}
.final-price-card .price-note-top { font-size: 12px; font-weight: 700; color: rgba(255,255,255,.5); letter-spacing: .12em; text-transform: uppercase; margin-bottom: 6px; }
.final-price-card .price-num { color: #fff; font-size: clamp(2.6rem, 7vw, 3.6rem); }
.final-price-card .price-note { color: rgba(255,255,255,.4); }
.final-trust-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin-top: 30px; }
.final-trust-row span {
  font-size: 14px; font-weight: 700; color: #fff; display: flex; align-items: center; gap: 8px;
  background: rgba(201,168,108,.16); border: 1px solid rgba(201,168,108,.35); border-radius: 50px; padding: 9px 20px;
}
.final-trust-row span::before { content: "✓"; color: var(--gold); font-size: 15px; }
.final-cta .btn-text { color: rgba(255,255,255,.65); }
.final-cta .btn-text:hover { color: #fff; }

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer { text-align: center; padding: 50px 24px 40px; color: var(--text-muted); background: var(--brown); }
.footer-logo { height: 42px; margin: 0 auto 14px; filter: brightness(0) invert(1); opacity: .85; }
.site-footer p { margin: 0 0 14px; font-size: 0.9rem; color: rgba(255,255,255,.5); }
.footer-links { display: flex; justify-content: center; gap: 24px; }
.footer-links a { font-size: 13px; color: rgba(255,255,255,.45); transition: color .2s; }
.footer-links a:hover { color: var(--pink); }

/* ============================================================
   WHATSAPP FLOAT
   ============================================================ */
.whatsapp-float {
  position: fixed; bottom: 22px; left: 22px; z-index: 500; width: 58px; height: 58px; border-radius: 50%;
  background: #25D366; color: #fff; display: flex; align-items: center; justify-content: center;
  box-shadow: 0 12px 28px -8px rgba(37,211,102,0.6); transition: transform 0.25s var(--ease-out);
}
.whatsapp-float:hover { transform: scale(1.08); }

/* ============================================================
   DISCOUNT POPUP — slides in once, on scroll
   ============================================================ */
.discount-popup {
  position: fixed; z-index: 600; bottom: 22px; right: 22px; max-width: 320px;
  display: flex; align-items: center; gap: 14px; padding: 18px 40px 18px 20px;
  background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-md);
  box-shadow: 0 24px 50px -14px rgba(43,31,23,0.35);
  transform: translateY(140%) scale(0.9); opacity: 0; pointer-events: none;
  transition: transform 0.5s cubic-bezier(.34,1.3,.64,1), opacity 0.4s var(--ease-out);
}
.discount-popup.is-visible { transform: translateY(0) scale(1); opacity: 1; pointer-events: auto; }
.discount-popup-emoji { font-size: 1.8rem; flex-shrink: 0; }
.discount-popup-text { display: flex; flex-direction: column; gap: 4px; font-size: 0.86rem; color: var(--brown-soft); }
.discount-popup-text strong:first-child { font-family: var(--font-heading); font-size: 0.98rem; color: var(--brown); }
.discount-popup-close {
  position: absolute; top: 10px; left: 10px; width: 24px; height: 24px; border-radius: 50%;
  background: var(--cream-mid); color: var(--brown-soft); border: none; font-size: 12px;
  display: flex; align-items: center; justify-content: center; transition: background 0.2s, transform 0.2s;
}
.discount-popup-close:hover { background: var(--pink); transform: scale(1.1); }
.discount-popup-btn {
  display: block; margin-top: 8px; font-size: 0.85rem; font-weight: 800; color: var(--champagne);
  white-space: nowrap;
}
.discount-popup-btn:hover { color: var(--brown); }
@media (max-width: 640px) {
  .discount-popup { right: 12px; left: 12px; max-width: none; bottom: 90px; }
}
@media (prefers-reduced-motion: reduce) { .discount-popup { transition: opacity 0.3s; transform: none; } }

/* ============================================================
   TILT (JS-driven, hover only)
   ============================================================ */
@media (hover: hover) { [data-tilt] { transition: transform 0.15s ease-out; } }
