/* Luma design foundation: restrained warmth, photo-first surfaces, one confident accent. */
@font-face {
  font-family: "Onest";
  src: url("/assets/fonts/onest-cyrillic.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

@font-face {
  font-family: "Onest";
  src: url("/assets/fonts/onest-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root {
  color-scheme: light;
  --background: #f7f5f1;
  --surface: #ffffff;
  --surface-secondary: #efece6;
  --text-primary: #191816;
  --text-secondary: #706d68;
  --border: rgba(25, 24, 22, 0.1);
  --orange-primary: #d3460f;
  --orange-hover: #cc420d;
  --orange-pressed: #ba3508;
  --orange-soft: #fff1e9;
  --orange-border: rgba(211, 70, 15, 0.2);
  --orange-focus: rgba(211, 70, 15, 0.24);
  --success: #27795a;
  --warning: #a7641c;
  --error: #b83b35;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 26px;
  --radius-hero: 30px;
  --radius-pill: 999px;
  --shadow-soft: 0 14px 40px rgba(35, 29, 23, 0.08);
  --shadow-float: 0 20px 55px rgba(31, 24, 18, 0.14);
  --motion-fast: 140ms;
  --motion-normal: 280ms;
  --motion-story: 620ms;
  --ease-spring: cubic-bezier(.2,.82,.3,1);
  --ease-out: cubic-bezier(.22,.72,.26,1);
  --safe-top: max(12px, env(safe-area-inset-top));
  --safe-bottom: max(10px, env(safe-area-inset-bottom));
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }

html { background: #e9e6e0; }

body {
  margin: 0;
  min-width: 320px;
  min-height: 100dvh;
  background: #e9e6e0;
  color: var(--text-primary);
  -webkit-font-smoothing: antialiased;
  overscroll-behavior: none;
}

button, input, textarea { font: inherit; }
button { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button:focus-visible, input:focus-visible, textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid rgba(217, 78, 18, 0.3);
  outline-offset: 2px;
}

img { display: block; max-width: 100%; }

#app {
  width: min(100%, 430px);
  min-height: 100dvh;
  margin: 0 auto;
  background: var(--background);
  box-shadow: 0 0 80px rgba(28, 23, 17, 0.12);
  overflow: hidden;
  position: relative;
}

.screen {
  min-height: 100dvh;
  background: var(--background);
  animation: screen-in 360ms cubic-bezier(.22,.8,.3,1);
}

.screen.has-nav { padding-bottom: calc(96px + var(--safe-bottom)); }
.screen.has-sticky { padding-bottom: calc(150px + var(--safe-bottom)); }

@keyframes screen-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}

.topbar {
  min-height: 64px;
  padding: calc(var(--safe-top) + 4px) var(--space-5) var(--space-3);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  position: relative;
  z-index: 20;
}

.topbar.overlay {
  position: absolute;
  inset: 0 0 auto;
  color: white;
  background: linear-gradient(180deg, rgba(15, 12, 10, .58), transparent);
}

.brand {
  border: 0;
  background: transparent;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  cursor: pointer;
  font-size: 20px;
  font-weight: 780;
  letter-spacing: -0.04em;
}

.brand-mark {
  width: 28px;
  height: 28px;
  border-radius: 9px 9px 9px 3px;
  display: grid;
  place-items: center;
  color: white;
  background: var(--orange-primary);
  box-shadow: 0 5px 14px rgba(217, 78, 18, .22);
}

.brand-mark svg { width: 17px; height: 17px; }
.brand em { color: var(--orange-primary); font-style: normal; }

.icon-button {
  width: 46px;
  height: 46px;
  border: 1px solid var(--border);
  border-radius: 50%;
  background: rgba(255,255,255,.88);
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: transform 150ms ease, background 150ms ease;
  backdrop-filter: blur(14px);
}

.icon-button svg { width: 21px; height: 21px; }
.icon-button:active { transform: scale(.93); background: var(--surface-secondary); }
.icon-button.on-photo { color: white; background: rgba(22,18,15,.32); border-color: rgba(255,255,255,.25); }

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--orange-primary);
  font-size: 11px;
  font-weight: 760;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.eyebrow::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

h1, h2, h3, p { margin: 0; }

.display {
  font-size: clamp(46px, 13vw, 58px);
  line-height: .94;
  letter-spacing: -.068em;
  font-weight: 790;
}

.title {
  font-size: clamp(32px, 9.5vw, 42px);
  line-height: 1;
  letter-spacing: -.055em;
  font-weight: 780;
}

.section-title {
  font-size: 34px;
  line-height: 1.02;
  letter-spacing: -.052em;
  font-weight: 780;
}

.subtitle {
  color: var(--text-secondary);
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: -.012em;
}

.muted { color: var(--text-secondary); }

.primary-button, .secondary-button {
  min-height: 56px;
  position: relative;
  border-radius: var(--radius-md);
  padding: 0 20px;
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 720;
  cursor: pointer;
  transition: transform 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

.primary-button {
  background: var(--orange-primary);
  color: white;
  box-shadow: 0 10px 24px rgba(190, 64, 12, .22);
}

.primary-button svg, .secondary-button svg {
  width: 19px;
  height: 19px;
  flex: 0 0 auto;
}

.primary-button:hover { background: var(--orange-hover); }
.primary-button:active { background: var(--orange-pressed); transform: scale(.975); box-shadow: 0 5px 12px rgba(190,64,12,.18); }
.primary-button:disabled,.secondary-button:disabled,button[aria-disabled="true"] { opacity:.46; cursor:not-allowed; box-shadow:none; transform:none; }
.primary-button.is-loading { color:transparent; pointer-events:none; }
.primary-button.is-loading::after { content:""; width:19px; height:19px; border:2px solid rgba(255,255,255,.45); border-top-color:white; border-radius:50%; position:absolute; animation:button-spin 700ms linear infinite; }
.primary-button.is-success { background:var(--success); box-shadow:0 10px 24px rgba(39,147,91,.2); }
@keyframes button-spin { to { transform:rotate(360deg); } }

.secondary-button {
  background: var(--surface-secondary);
  color: var(--text-primary);
}

.secondary-button:active { transform: scale(.975); background: #e7e3dc; }
.full { width: 100%; }
.button-arrow { margin-left: auto; }

.landing-hero { padding: 16px 20px 0; }
.landing-hero .display { margin-top: 18px; }
.landing-hero .subtitle { margin-top: 18px; max-width: 350px; }
.landing-hero .primary-button { margin-top: 24px; }
.cta-note { margin: 11px 0 23px; text-align: center; color: var(--text-secondary); font-size: 12px; }

@property --split { syntax:"<percentage>"; inherits:true; initial-value:53%; }

.before-after {
  --split: 53%;
  width: 100%;
  aspect-ratio: 4 / 5;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: #d4ccc2;
  box-shadow: var(--shadow-float);
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
  cursor: ew-resize;
  outline: none;
}

.before-after > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 52% center;
  pointer-events: none;
  -webkit-user-drag: none;
  transition: opacity 180ms ease;
}

.before-after .before-photo {
  filter: saturate(.66) contrast(.88) brightness(.83) sepia(.08);
}

.before-after .after-photo {
  clip-path: inset(0 0 0 var(--split));
  filter: saturate(1.03) contrast(1.03) brightness(1.01);
}

.before-after::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--split);
  width: 2px;
  transform: translateX(-1px);
  background: rgba(255,255,255,.96);
  box-shadow: 0 0 0 1px rgba(0,0,0,.05);
  pointer-events: none;
}

.compare-label {
  position: absolute;
  z-index: 4;
  top: 14px;
  border-radius: var(--radius-pill);
  padding: 7px 10px;
  color: white;
  background: rgba(20,17,14,.38);
  backdrop-filter: blur(12px);
  font-size: 11px;
  font-weight: 720;
  pointer-events: none;
}

.compare-label.before { left: 14px; }
.compare-label.after { right: 14px; }

.compare-handle {
  position: absolute;
  z-index: 5;
  left: var(--split);
  top: 50%;
  width: 46px;
  height: 46px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: white;
  box-shadow: 0 7px 20px rgba(25,20,16,.19);
  pointer-events: none;
}

.compare-handle svg { width: 19px; color: var(--orange-primary); }
.compare-hint { position: absolute; z-index: 4; bottom: 15px; left: 50%; transform: translateX(-50%); white-space: nowrap; padding: 8px 12px; border-radius: var(--radius-pill); color: white; background: rgba(21,17,14,.34); backdrop-filter: blur(12px); font-size: 11px; pointer-events:none; }
.compare-loader { display:none; position:absolute; z-index:7; inset:0; place-items:center; background:linear-gradient(145deg,#ddd5cc,#cfc5ba); pointer-events:none; }
.compare-loader i { width:24px; height:24px; border:2px solid rgba(255,255,255,.5); border-top-color:var(--orange-primary); border-radius:50%; animation:compare-loader-spin 700ms linear infinite; }
.before-after.is-loading { cursor:wait; pointer-events:none; }
.before-after.is-loading > img,.before-after.is-loading .compare-label,.before-after.is-loading .compare-handle,.before-after.is-loading .compare-hint { opacity:0; }
.before-after.is-loading::after { opacity:0; }
.before-after.is-loading .compare-loader { display:grid; }
.before-after.is-auto-previewing { transition:--split 620ms cubic-bezier(.25,.76,.25,1); }
.before-after.is-auto-looping { transition:--split 2100ms cubic-bezier(.45,0,.2,1); }
.before-after.is-dragging { transition:none !important; cursor:ew-resize; }
.before-after:focus-visible { outline:3px solid rgba(214,64,12,.28); outline-offset:4px; }
@keyframes compare-loader-spin { to { transform:rotate(360deg); } }

.trust-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 20px 8px 0;
  color: var(--text-secondary);
  font-size: 11px;
}

.trust-row span { display: inline-flex; gap: 5px; align-items: center; }
.trust-row svg { width: 14px; height: 14px; color: var(--success); }

.story-section { padding: 78px 20px 0; }
.story-section .section-title { margin-top: 14px; }
.story-section > .subtitle { margin-top: 15px; }

.analysis-story {
  margin-top: 28px;
  min-height: 470px;
  border-radius: var(--radius-lg);
  background: #201d1a;
  color: white;
  position: relative;
  overflow: hidden;
  box-shadow: var(--shadow-float);
}

.analysis-story img { width: 100%; height: 470px; object-fit: cover; object-position: 53% center; opacity: .86; }
.analysis-story::after { content:""; position:absolute; inset:0; background: linear-gradient(180deg, transparent 48%, rgba(17,14,12,.76)); }
.scan-line { position:absolute; z-index:2; left:8%; right:8%; top:18%; height:1px; background:linear-gradient(90deg, transparent, #ff9a62, transparent); box-shadow:0 0 16px rgba(255,125,62,.8); animation: scan 3.8s ease-in-out infinite; }
@keyframes scan { 0%,100% { transform:translateY(0); opacity:.35; } 50% { transform:translateY(280px); opacity:1; } }

.insight {
  position: absolute;
  z-index: 4;
  padding: 9px 12px;
  border-radius: var(--radius-pill);
  background: rgba(255,255,255,.92);
  color: var(--text-primary);
  box-shadow: 0 8px 20px rgba(15,12,10,.15);
  font-size: 11px;
  font-weight: 690;
  animation: insight-in 3.8s ease-in-out infinite;
}
.insight::before { content:""; display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--orange-primary); margin-right:6px; }
.insight.one { top:16%; left:8%; animation-delay:0ms; }
.insight.two { top:38%; right:7%; animation-delay:500ms; }
.insight.three { top:56%; left:7%; animation-delay:1s; }
@keyframes insight-in { 0%,10% { opacity:0; transform:translateY(5px); } 20%,85% { opacity:1; transform:none; } 100% { opacity:0; } }

.analysis-caption { position:absolute; z-index:5; left:20px; right:20px; bottom:22px; }
.analysis-caption small { display:block; color:#ffc3a1; font-size:11px; font-weight:720; letter-spacing:.1em; text-transform:uppercase; margin-bottom:7px; }
.analysis-caption strong { font-size:22px; line-height:1.1; letter-spacing:-.035em; }

.one-click-flow {
  margin-top: 28px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 18px;
  overflow: hidden;
}

.flow-photo {
  height: 320px;
  position: relative;
  border-radius: 19px;
  overflow: hidden;
  background: #ddd;
}
.flow-photo img { width:100%; height:100%; object-fit:cover; }
.flow-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 58%, rgba(18,14,11,.55)); }
.flow-status { position:absolute; z-index:2; left:14px; right:14px; bottom:14px; display:flex; justify-content:space-between; align-items:end; color:white; }
.flow-status strong { display:block; font-size:25px; letter-spacing:-.04em; }
.flow-status span { font-size:11px; opacity:.78; }
.flow-status .done { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:var(--orange-primary); background:white; }
.signal-row { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; margin-top:14px; }
.signal { text-align:center; padding:10px 2px; border-radius:12px; color:var(--text-secondary); background:var(--surface-secondary); font-size:10px; font-weight:650; }
.signal svg { display:block; width:17px; height:17px; margin:0 auto 6px; color:var(--orange-primary); }

.smart-story .before-after { margin-top:28px; }
.smart-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:14px; }
.smart-footer .label { font-size:11px; font-weight:780; letter-spacing:.12em; color:var(--orange-primary); }
.smart-footer p { color:var(--text-secondary); font-size:12px; line-height:1.4; text-align:right; }

.swipe-preview { margin-top:28px; overflow:hidden; }
.preview-track { display:flex; gap:12px; width:max-content; transform:translateX(10px) rotate(-1deg); }
.preview-card { width:290px; height:390px; position:relative; overflow:hidden; border-radius:var(--radius-lg); box-shadow:var(--shadow-soft); }
.preview-card img { width:100%; height:100%; object-fit:cover; }
.preview-card::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(15,12,10,.74)); }
.preview-card figcaption { position:absolute; z-index:2; left:18px; right:18px; bottom:18px; color:white; }
.preview-card strong { display:block; font-size:24px; letter-spacing:-.04em; }
.preview-card span { font-size:12px; opacity:.78; }
.signature-copy { margin-top:20px; font-size:22px; line-height:1.16; font-weight:750; letter-spacing:-.04em; }
.signature-copy em { font-style:normal; color:var(--orange-primary); }

.create-story-grid { margin:28px -20px 0; display:flex; gap:10px; padding:0 20px; overflow:hidden; }
.create-story-card { flex:0 0 74%; height:390px; position:relative; border-radius:var(--radius-lg); overflow:hidden; }
.create-story-card img { width:100%; height:100%; object-fit:cover; }
.create-story-card::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(15,12,10,.74)); }
.create-story-card div { position:absolute; z-index:2; bottom:18px; left:18px; color:white; }
.create-story-card b { display:block; font-size:24px; letter-spacing:-.04em; }
.create-story-card span { font-size:12px; opacity:.76; }
.landing-final { margin-top:80px; padding:52px 20px calc(44px + var(--safe-bottom)); color:white; background:#1d1a17; }
.landing-final .title { max-width:330px; }
.landing-final p { margin-top:16px; color:rgba(255,255,255,.64); line-height:1.5; }
.landing-final .primary-button { margin-top:25px; }

.page-head { padding: 12px 20px 26px; }
.page-head .title { margin-top:10px; }
.page-head .subtitle { margin-top:11px; }

.home { background:linear-gradient(180deg,#faf8f4 0%,var(--background) 46%); }
.home-greeting { padding:14px 20px 4px; }
.home-greeting .title { margin-top:10px; }
.action-stack { padding:22px 20px; display:grid; gap:16px; }

.action-card {
  min-height: 340px;
  position:relative;
  overflow:hidden;
  border:0;
  border-radius:var(--radius-lg);
  background:#26221e;
  color:white;
  text-align:left;
  padding:0;
  cursor:pointer;
  box-shadow:var(--shadow-soft);
  transition:transform 180ms ease;
}
.action-card:active { transform:scale(.985); }
.action-card img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.action-card.improve img { object-position:52% 32%; filter:saturate(.94); }
.action-card.create img { object-position:50% 42%; }
.action-card::after { content:""; position:absolute; inset:25% 0 0; background:linear-gradient(transparent,rgba(18,14,11,.88)); }
.action-content { position:absolute; z-index:2; inset:auto 18px 18px; }
.card-kicker { display:inline-flex; padding:7px 9px; border-radius:var(--radius-pill); color:#ffd4bd; background:rgba(18,14,11,.35); backdrop-filter:blur(10px); font-size:10px; font-weight:750; letter-spacing:.09em; text-transform:uppercase; }
.action-content h2 { margin-top:10px; font-size:31px; line-height:1; letter-spacing:-.05em; }
.action-content p { margin-top:7px; max-width:260px; color:rgba(255,255,255,.72); font-size:13px; line-height:1.4; }
.card-action { margin-top:14px; min-height:44px; display:flex; align-items:center; justify-content:space-between; padding:0 14px; border-radius:14px; color:var(--text-primary); background:white; font-size:13px; font-weight:720; }
.card-action i { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; color:white; background:var(--orange-primary); }

.bottom-nav {
  position:fixed;
  z-index:80;
  left:50%;
  bottom:0;
  width:min(100%,430px);
  transform:translateX(-50%);
  display:grid;
  grid-template-columns:repeat(5,1fr);
  padding:7px 8px var(--safe-bottom);
  border-top:1px solid rgba(25,24,22,.08);
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(22px);
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.nav-item { min-height:55px; border:0; background:transparent; display:grid; place-items:center; align-content:center; gap:3px; color:#88847f; border-radius:14px; cursor:pointer; font-size:9px; font-weight:620; }
.nav-item svg { width:21px; height:21px; stroke-width:1.8; }
.nav-item.active { color:var(--orange-primary); background:var(--orange-soft); }
.nav-item:active { transform:scale(.94); }

.upload-wrap { padding:0 20px; }
.upload-card { border:1px solid var(--border); border-radius:var(--radius-lg); background:var(--surface); padding:12px; box-shadow:var(--shadow-soft); }
.upload-visual { height:365px; border:0; padding:0; border-radius:19px; position:relative; overflow:hidden; background:#e5dfd7; cursor:pointer; }
.upload-visual img { width:100%; height:100%; object-fit:cover; object-position:52% center; filter:saturate(.74) brightness(.88); }
.upload-visual::after { content:""; position:absolute; inset:0; border:1px solid rgba(255,255,255,.2); border-radius:inherit; }
.upload-badge { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:76px; height:76px; border-radius:50%; background:rgba(255,255,255,.93); display:grid; place-items:center; box-shadow:0 16px 34px rgba(22,17,14,.18); color:var(--orange-primary); }
.upload-badge svg { width:29px; height:29px; }
.upload-visual-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; padding:24px; color:var(--text-primary); background:linear-gradient(155deg,#fffdfa 0%,#fff7f1 58%,#f9eee6 100%); border:1px dashed rgba(229,67,17,.3); box-shadow:inset 0 0 0 7px rgba(255,255,255,.58); }
.upload-visual-empty::before { content:""; position:absolute; width:188px; height:188px; border-radius:50%; background:radial-gradient(circle,rgba(255,111,55,.13),rgba(255,111,55,0) 70%); pointer-events:none; }
.upload-visual-empty::after { border:1px solid rgba(229,67,17,.08); }
.upload-visual-empty .upload-badge { position:relative; left:auto; top:auto; transform:none; width:82px; height:82px; background:#fff; border:1px solid rgba(229,67,17,.15); box-shadow:0 16px 32px rgba(128,55,25,.12); z-index:1; transition:transform 180ms ease,box-shadow 180ms ease; }
.upload-visual-empty .upload-badge svg { width:31px; height:31px; }
.upload-empty-copy { position:relative; z-index:1; display:grid; gap:5px; text-align:center; }
.upload-empty-copy strong { font-size:18px; line-height:1.2; letter-spacing:-.025em; }
.upload-empty-copy > span { color:var(--text-secondary); font-size:12px; line-height:1.4; }
.upload-visual-empty:active .upload-badge { transform:scale(.96); box-shadow:0 9px 20px rgba(128,55,25,.1); }
.upload-visual-empty:focus-visible { outline:3px solid rgba(229,67,17,.28); outline-offset:3px; }
.upload-copy { padding:18px 8px 8px; text-align:center; }
.upload-copy strong { display:block; font-size:20px; letter-spacing:-.035em; }
.upload-copy span { display:block; margin-top:6px; color:var(--text-secondary); font-size:13px; line-height:1.4; }
.upload-actions { padding:18px 20px calc(20px + var(--safe-bottom)); display:grid; gap:10px; }
.legal-note { text-align:center; color:var(--text-secondary); font-size:10px; line-height:1.4; }
.sr-input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }

.analysis-screen { color:white; background:#151311; overflow:hidden; }
.analysis-stage { min-height:100dvh; position:relative; }
.analysis-stage > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:52% center; filter:saturate(.72) brightness(.56); transform:scale(1.04); animation:photo-focus 5s ease-out both; }
@keyframes photo-focus { from { filter:saturate(.48) brightness(.42) blur(9px); transform:scale(1.08); } to { filter:saturate(.8) brightness(.58) blur(0); transform:scale(1.03); } }
.analysis-stage::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(14,11,9,.38),rgba(14,11,9,.08) 36%,rgba(14,11,9,.88) 78%); }
.analysis-ui { position:relative; z-index:3; min-height:100dvh; display:flex; flex-direction:column; padding:calc(var(--safe-top) + 12px) 20px calc(var(--safe-bottom) + 22px); }
.analysis-top { display:flex; align-items:center; justify-content:space-between; }
.analysis-top .brand { color:white; }
.analysis-top .brand em { color:#ffb085; }
.live-pill { min-height:34px; padding:0 11px; display:inline-flex; align-items:center; gap:7px; border:1px solid rgba(255,255,255,.18); border-radius:var(--radius-pill); background:rgba(12,10,8,.2); backdrop-filter:blur(10px); font-size:11px; }
.live-pill i { width:7px; height:7px; border-radius:50%; background:#ff8b50; box-shadow:0 0 0 5px rgba(255,139,80,.14); animation:pulse 1.8s ease-in-out infinite; }
@keyframes pulse { 50% { box-shadow:0 0 0 9px rgba(255,139,80,0); } }
.analysis-bottom { margin-top:auto; }
.analysis-bottom h1 { font-size:34px; line-height:1; letter-spacing:-.055em; }
.analysis-bottom > p { margin-top:10px; color:rgba(255,255,255,.63); font-size:13px; }
.analysis-list { margin-top:22px; display:grid; gap:9px; }
.analysis-item { min-height:44px; display:flex; align-items:center; gap:11px; color:rgba(255,255,255,.48); font-size:13px; transition:color 260ms ease; }
.analysis-item .state { width:25px; height:25px; display:grid; place-items:center; border-radius:50%; border:1px solid rgba(255,255,255,.2); }
.analysis-item .state svg { width:14px; height:14px; }
.analysis-item.done { color:white; }
.analysis-item.done .state { border-color:transparent; background:rgba(255,255,255,.96); color:var(--success); }
.analysis-item.current { color:white; }
.analysis-item.current .state { border-color:#ff9a62; color:#ff9a62; }
.analysis-item.current .state::before { content:""; width:7px; height:7px; border-radius:50%; background:currentColor; animation:pulse-dot 900ms ease-in-out infinite; }
@keyframes pulse-dot { 50% { opacity:.3; transform:scale(.65); } }
.progress-track { height:3px; margin-top:22px; overflow:hidden; border-radius:10px; background:rgba(255,255,255,.13); }
.progress-bar { height:100%; width:8%; border-radius:10px; background:#ff7c3c; transition:width 600ms cubic-bezier(.2,.8,.2,1); }

.result-screen { background:#171411; color:white; }
.result-photo { height:calc(100dvh - 194px); min-height:510px; position:relative; }
.result-photo .before-after { height:100%; aspect-ratio:auto; border-radius:0 0 30px 30px; box-shadow:none; }
.result-photo .before-after::before { content:""; position:absolute; z-index:3; inset:0; box-shadow:inset 0 -90px 90px -80px rgba(0,0,0,.45); pointer-events:none; }
.result-chip { position:absolute; z-index:8; top:calc(var(--safe-top) + 5px); left:50%; transform:translateX(-50%); min-height:38px; padding:0 14px; display:flex; align-items:center; gap:7px; color:white; background:rgba(24,20,17,.4); border:1px solid rgba(255,255,255,.2); border-radius:var(--radius-pill); backdrop-filter:blur(14px); font-size:11px; font-weight:750; letter-spacing:.1em; }
.result-chip i { width:7px; height:7px; border-radius:50%; background:#ff8b50; }
.result-copy { padding:17px 20px 8px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.result-copy strong { font-size:18px; letter-spacing:-.025em; }
.result-copy span { display:block; margin-top:3px; color:rgba(255,255,255,.55); font-size:11px; }
.result-actions { padding:0 20px calc(var(--safe-bottom) + 15px); display:grid; grid-template-columns:1fr auto; gap:9px; }
.result-actions .primary-button { min-height:52px; }
.result-actions .icon-button { width:52px; height:52px; border-radius:17px; background:#2c2824; color:white; border-color:rgba(255,255,255,.08); }

.deck-screen { min-height:100dvh; color:white; background:#171411; overflow:hidden; }
.deck-head { padding:calc(var(--safe-top) + 9px) 16px 11px; display:flex; align-items:center; justify-content:space-between; }
.deck-head .icon-button { color:white; background:#2a2622; border-color:rgba(255,255,255,.08); }
.deck-head-copy { text-align:center; }
.deck-head-copy strong { display:block; font-size:14px; }
.deck-head-copy span { display:block; margin-top:2px; color:rgba(255,255,255,.48); font-size:10px; }
.deck { height:calc(100dvh - 178px); min-height:540px; padding:4px 14px 0; position:relative; touch-action:pan-y; }
.swipe-card { position:absolute; inset:4px 14px 8px; border-radius:28px; overflow:hidden; background:#39332e; box-shadow:0 18px 50px rgba(0,0,0,.3); transform-origin:50% 92%; will-change:transform; transition:transform 420ms cubic-bezier(.2,.85,.25,1),opacity 320ms ease; }
.swipe-card.next { transform:translateY(10px) scale(.958); opacity:.58; }
.swipe-card img { width:100%; height:100%; object-fit:cover; object-position:52% center; pointer-events:none; }
.swipe-card[data-filter="natural"] img { filter:saturate(.95) contrast(1.01); }
.swipe-card[data-filter="cinema"] img { filter:saturate(.76) contrast(1.15) sepia(.1); }
.swipe-card[data-filter="film"] img { filter:saturate(.72) contrast(.98) brightness(1.06) sepia(.18); }
.swipe-card::after { content:""; position:absolute; inset:46% 0 0; background:linear-gradient(transparent,rgba(15,12,10,.86)); pointer-events:none; }
.swipe-card-copy { position:absolute; z-index:2; left:20px; right:20px; bottom:21px; }
.swipe-card-copy small { color:#ffc9ab; font-size:10px; font-weight:760; letter-spacing:.13em; }
.swipe-card-copy h2 { margin-top:6px; font-size:36px; letter-spacing:-.05em; }
.swipe-card-copy p { margin-top:5px; max-width:280px; color:rgba(255,255,255,.68); font-size:12px; line-height:1.4; }
.swipe-stamp { position:absolute; z-index:4; top:26px; padding:9px 12px; border:2px solid; border-radius:10px; font-size:14px; font-weight:800; letter-spacing:.08em; opacity:0; pointer-events:none; }
.swipe-stamp.like { left:22px; color:#ff9d68; transform:rotate(-8deg); }
.swipe-stamp.pass { right:22px; color:#fff; transform:rotate(8deg); }
.deck-actions { height:90px; padding:9px 38px calc(var(--safe-bottom) + 9px); display:flex; align-items:flex-start; justify-content:space-between; }
.deck-action { width:53px; height:53px; border:0; border-radius:50%; display:grid; place-items:center; color:white; background:#2a2622; cursor:pointer; }
.deck-action.primary { width:61px; height:61px; margin-top:-4px; color:white; background:var(--orange-primary); box-shadow:0 10px 25px rgba(217,78,18,.28); }
.deck-action svg { width:22px; height:22px; }
.deck-action:active { transform:scale(.92); }

.create-page { background:#f5f2ed; }
.category-scroll { display:flex; gap:8px; overflow:auto; scrollbar-width:none; padding:0 20px 8px; }
.category-scroll::-webkit-scrollbar { display:none; }
.category-pill { flex:0 0 auto; min-height:44px; padding:0 16px; border:1px solid var(--border); border-radius:var(--radius-pill); background:var(--surface); color:var(--text-secondary); font-size:12px; font-weight:650; cursor:pointer; }
.category-pill.active { border-color:var(--text-primary); color:white; background:var(--text-primary); }
.recipe-feed { padding:14px 20px 24px; display:grid; gap:16px; }
.recipe-card { height:490px; position:relative; overflow:hidden; border-radius:var(--radius-lg); color:white; background:#333; box-shadow:var(--shadow-soft); }
.recipe-card img { width:100%; height:100%; object-fit:cover; }
.recipe-card::after { content:""; position:absolute; inset:37% 0 0; background:linear-gradient(transparent,rgba(15,12,10,.9)); }
.recipe-card-content { position:absolute; z-index:2; inset:auto 18px 18px; }
.recipe-card-content small { color:#ffd0b6; font-size:10px; font-weight:750; letter-spacing:.12em; }
.recipe-card-content h2 { margin-top:7px; font-size:29px; line-height:1; letter-spacing:-.045em; }
.recipe-card-content p { margin-top:7px; color:rgba(255,255,255,.7); font-size:12px; line-height:1.4; max-width:270px; }
.try-row { margin-top:14px; display:flex; align-items:center; justify-content:space-between; }
.try-button { min-height:44px; padding:0 17px; border:0; border-radius:14px; color:var(--text-primary); background:white; font-size:12px; font-weight:740; cursor:pointer; }
.save-button { width:44px; height:44px; border:1px solid rgba(255,255,255,.25); border-radius:50%; color:white; background:rgba(18,14,11,.25); backdrop-filter:blur(12px); display:grid; place-items:center; cursor:pointer; }
.save-button svg { width:19px; height:19px; }
.save-button.saved { color:#ff9a62; background:white; }
.idea-box { margin:4px 20px 20px; padding:18px; border-radius:var(--radius-lg); background:var(--surface); border:1px solid var(--border); }
.idea-box h3 { font-size:20px; letter-spacing:-.035em; }
.idea-box p { margin-top:5px; color:var(--text-secondary); font-size:12px; }
.idea-input-wrap { margin-top:14px; position:relative; }
.idea-input { width:100%; min-height:96px; resize:none; border:1px solid var(--border); border-radius:16px; padding:14px 48px 14px 14px; background:#faf8f5; color:var(--text-primary); font-size:13px; line-height:1.4; }
.idea-send { position:absolute; right:8px; bottom:8px; width:44px; height:44px; border:0; border-radius:13px; color:white; background:var(--orange-primary); display:grid; place-items:center; cursor:pointer; }
.idea-send svg { width:18px; height:18px; }

.sticky-cta { position:fixed; z-index:45; left:50%; bottom:0; width:min(100%,430px); transform:translateX(-50%); padding:12px 20px calc(12px + var(--safe-bottom)); background:linear-gradient(180deg,rgba(247,245,241,0),rgba(247,245,241,.96) 24%,var(--background) 50%); }
.sticky-cta.dark { background:linear-gradient(180deg,rgba(23,20,17,0),rgba(23,20,17,.96) 24%,#171411 50%); }

.sheet-backdrop { position:fixed; z-index:90; inset:0; background:rgba(20,17,14,.38); backdrop-filter:blur(4px); animation:fade-in 180ms ease both; }
.bottom-sheet { position:fixed; z-index:91; left:50%; bottom:0; width:min(100%,430px); transform:translateX(-50%); padding:9px 20px calc(20px + var(--safe-bottom)); border-radius:28px 28px 0 0; background:var(--surface); box-shadow:0 -20px 50px rgba(24,19,15,.16); animation:sheet-up 300ms cubic-bezier(.2,.82,.28,1) both; }
@keyframes fade-in { from { opacity:0; } }
@keyframes sheet-up { from { transform:translate(-50%,100%); } }
.sheet-handle { width:38px; height:4px; margin:0 auto 22px; border-radius:4px; background:#d7d2cb; }
.sheet-preview { height:220px; border-radius:19px; overflow:hidden; }
.sheet-preview img { width:100%; height:100%; object-fit:cover; }
.bottom-sheet h2 { margin-top:18px; font-size:27px; letter-spacing:-.045em; }
.bottom-sheet p { margin-top:7px; color:var(--text-secondary); font-size:13px; line-height:1.45; }
.sheet-actions { margin-top:18px; display:grid; gap:9px; }

.toast { position:fixed; z-index:120; left:50%; bottom:calc(100px + var(--safe-bottom)); width:min(calc(100% - 40px),390px); transform:translate(-50%,20px); padding:13px 16px; border-radius:15px; color:white; background:#27231f; box-shadow:var(--shadow-float); display:flex; align-items:center; gap:10px; font-size:12px; line-height:1.35; opacity:0; pointer-events:none; transition:opacity 220ms ease,transform 220ms ease; }
.toast.show { opacity:1; transform:translate(-50%,0); }
.toast i { width:23px; height:23px; flex:0 0 auto; border-radius:50%; display:grid; place-items:center; color:white; background:var(--success); }

.demo-empty { padding:35px 20px; min-height:65dvh; display:grid; place-items:center; text-align:center; }
.empty-icon { width:74px; height:74px; margin:0 auto 18px; border-radius:24px; display:grid; place-items:center; color:var(--orange-primary); background:var(--orange-soft); }
.empty-icon svg { width:30px; height:30px; }
.demo-empty h2 { font-size:28px; letter-spacing:-.045em; }
.demo-empty p { margin:8px auto 0; max-width:270px; color:var(--text-secondary); font-size:13px; line-height:1.45; }
.demo-empty .primary-button { margin-top:22px; }

@media (max-width: 370px) {
  .display { font-size:44px; }
  .section-title { font-size:31px; }
  .landing-hero, .story-section, .action-stack, .upload-wrap, .recipe-feed { padding-left:16px; padding-right:16px; }
  .action-card { min-height:320px; }
  .recipe-card { height:455px; }
  .trust-row { gap:9px; font-size:10px; }
}

@media (min-width: 431px) {
  body { padding:20px 0; }
  #app { min-height:calc(100dvh - 40px); border-radius:32px; }
  .screen { min-height:calc(100dvh - 40px); }
  .bottom-nav, .sticky-cta, .bottom-sheet { bottom:20px; border-radius:0 0 32px 32px; }
  .sheet-backdrop { width:430px; left:50%; transform:translateX(-50%); }
  .bottom-sheet { border-radius:28px 28px 32px 32px; }
}

/* Iteration 2: public/app contexts, growth foundation and shared Catalog ↔ Swipe logic. */
.marketing-header {
  position: sticky;
  z-index: 55;
  top: 0;
  min-height: 68px;
  padding: calc(var(--safe-top) + 3px) 18px 9px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(247,245,241,.9);
  border-bottom: 1px solid rgba(25,24,22,.045);
  backdrop-filter: blur(20px);
}

.marketing-actions, .app-head-actions { display:flex; align-items:center; gap:7px; }
.text-button { min-height:44px; padding:0 10px; border:0; background:transparent; font-size:13px; font-weight:720; cursor:pointer; }
.icon-button.compact { width:44px; height:44px; }
.marketing-header svg, .app-topbar svg, .contextual svg { width:20px; height:20px; }
.public-screen .landing-hero { padding-top:26px; }

.free-signal { display:inline-flex; align-items:center; gap:7px; min-height:33px; padding:0 11px; border-radius:var(--radius-pill); color:var(--orange-primary); background:var(--orange-soft); font-size:11px; font-weight:720; }
.free-signal span { width:19px; height:19px; display:grid; place-items:center; border-radius:50%; color:white; background:var(--orange-primary); }
.link-button { min-height:48px; margin:5px 0 15px; border:0; color:var(--text-primary); background:transparent; font-size:13px; font-weight:680; text-decoration:underline; text-decoration-color:rgba(25,24,22,.25); text-underline-offset:4px; cursor:pointer; }
.compare-hint { transition:opacity 180ms ease, transform 180ms ease; }
.compare-hint.hide { opacity:0; transform:translate(-50%,8px); }

.old-new { margin-top:27px; padding:18px; border-radius:var(--radius-lg); background:#211e1b; box-shadow:var(--shadow-soft); }
.old-way small, .our-way small { display:block; margin-bottom:10px; color:rgba(255,255,255,.48); font-size:10px; font-weight:720; letter-spacing:.1em; text-transform:uppercase; }
.control-cloud { display:flex; flex-wrap:wrap; gap:7px; }
.control-cloud span { min-height:36px; padding:0 11px; display:inline-flex; align-items:center; border:1px solid rgba(255,255,255,.11); border-radius:10px; color:rgba(255,255,255,.58); background:rgba(255,255,255,.045); font-size:11px; }
.way-arrow { height:44px; display:grid; place-items:center; color:#ff9a62; font-size:22px; }
.our-way { min-height:78px; padding:13px 14px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; border-radius:17px; color:var(--text-primary); background:white; }
.our-way small { margin:0 0 3px; color:var(--text-secondary); }
.our-way strong { display:block; font-size:16px; letter-spacing:-.025em; }
.our-way > svg { width:23px; height:23px; color:var(--success); }
.upload-mini { width:44px; height:44px; display:grid; place-items:center; border-radius:14px; color:white; background:var(--orange-primary); }
.upload-mini svg { width:20px; height:20px; }

.segmented { display:grid; grid-template-columns:repeat(2,1fr); gap:4px; padding:4px; border-radius:15px; background:#e9e5de; }
.segment { min-height:44px; border:0; border-radius:12px; display:flex; align-items:center; justify-content:center; gap:7px; color:var(--text-secondary); background:transparent; font-size:12px; font-weight:690; cursor:pointer; }
.segment svg { width:17px; height:17px; }
.segment.active, .segment[aria-selected="true"] { color:var(--text-primary); background:white; box-shadow:0 3px 12px rgba(28,23,18,.08); }
.landing-modes { margin-top:26px; }
.mini-catalog { min-height:350px; margin-top:12px; display:flex; gap:10px; overflow:hidden; transition:transform 280ms ease; }
.mini-catalog article { flex:0 0 calc(50% - 5px); min-width:0; position:relative; overflow:hidden; border-radius:20px; background:#ddd; transition:transform 320ms cubic-bezier(.2,.82,.3,1); }
.mini-catalog article img { width:100%; height:100%; object-fit:cover; }
.mini-catalog article::after { content:""; position:absolute; inset:55% 0 0; background:linear-gradient(transparent,rgba(15,12,10,.7)); }
.mini-catalog article b { position:absolute; z-index:2; left:13px; bottom:14px; color:white; font-size:18px; }
.mini-catalog article[data-filter="cinema"] img { filter:saturate(.72) contrast(1.12) sepia(.1); }
.mini-catalog.swipe-look article:first-child { flex-basis:82%; transform:rotate(-1deg); }
.mini-catalog.swipe-look article:last-child { flex-basis:82%; transform:translateX(-2px) scale(.96); }

.use-cases { overflow:hidden; }
.usecase-scroll { margin:26px -20px 0; padding:0 20px; display:flex; gap:10px; overflow:auto; scrollbar-width:none; scroll-snap-type:x mandatory; }
.usecase-scroll::-webkit-scrollbar { display:none; }
.usecase-card { flex:0 0 72%; height:370px; position:relative; overflow:hidden; border-radius:var(--radius-lg); scroll-snap-align:start; }
.usecase-card img { width:100%; height:100%; object-fit:cover; }
.usecase-card::after { content:""; position:absolute; inset:48% 0 0; background:linear-gradient(transparent,rgba(14,11,9,.78)); }
.usecase-card div { position:absolute; z-index:2; left:16px; bottom:16px; color:white; }
.usecase-card b { display:block; font-size:24px; letter-spacing:-.04em; }
.usecase-card span { color:rgba(255,255,255,.66); font-size:11px; }

.free-trial-card { padding:27px 20px 20px; border-radius:var(--radius-lg); background:white; border:1px solid var(--border); box-shadow:var(--shadow-soft); }
.free-trial-card h2 { margin-top:12px; font-size:31px; line-height:1.02; letter-spacing:-.052em; }
.free-trial-card p { margin-top:10px; color:var(--text-secondary); font-size:14px; line-height:1.45; }
.free-trial-card .primary-button { margin-top:20px; }
.free-trial-card > small { display:block; margin-top:11px; color:var(--text-secondary); text-align:center; font-size:10px; }
.teaser-plan { min-height:82px; margin-top:21px; padding:12px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:11px; border:1px solid var(--border); border-radius:18px; background:white; }
.teaser-plan > span { width:44px; height:44px; display:grid; place-items:center; border-radius:14px; color:var(--orange-primary); background:var(--orange-soft); }
.teaser-plan svg { width:21px; height:21px; }
.teaser-plan b, .teaser-plan small { display:block; }
.teaser-plan b { font-size:13px; }
.teaser-plan small { margin-top:3px; color:var(--text-secondary); font-size:10px; }
.teaser-plan button { min-height:44px; padding:0 12px; border:0; border-radius:13px; color:white; background:var(--text-primary); font-size:11px; font-weight:700; }

.mobile-footer { padding:36px 20px calc(26px + var(--safe-bottom)); color:white; background:#171411; }
.footer-brand p { margin:13px 0 26px; max-width:270px; color:rgba(255,255,255,.55); font-size:13px; line-height:1.45; }
.footer-brand .brand { color:white; }
.footer-brand .brand em { color:#ff9b66; }
.mobile-footer details { border-top:1px solid rgba(255,255,255,.1); }
.mobile-footer details:last-of-type { border-bottom:1px solid rgba(255,255,255,.1); }
.mobile-footer summary { min-height:55px; display:flex; align-items:center; justify-content:space-between; list-style:none; font-size:13px; font-weight:680; cursor:pointer; }
.mobile-footer summary::-webkit-details-marker { display:none; }
.mobile-footer details[open] summary span { transform:rotate(45deg); }
.mobile-footer details div { padding:0 0 12px; display:grid; }
.mobile-footer details button { min-height:44px; border:0; color:rgba(255,255,255,.58); background:transparent; text-align:left; font-size:12px; cursor:pointer; }
.mobile-footer > small { display:block; margin-top:25px; color:rgba(255,255,255,.34); font-size:10px; }

.app-topbar { padding-bottom:8px; }
.app-head-actions .icon-button { width:44px; height:44px; }
.credits-badge { min-height:44px; padding:0 11px; border:0; border-radius:var(--radius-pill); display:flex; align-items:center; gap:6px; color:var(--orange-primary); background:var(--orange-soft); font-size:12px; font-weight:760; cursor:pointer; }
.credits-badge svg { width:18px; height:18px; }
.contextual { justify-content:space-between; }
.contextual > strong { font-size:14px; letter-spacing:-.02em; }
.context-title { font-size:17px; letter-spacing:-.03em; }
.header-spacer { width:46px; }
.continue-wrap { padding:18px 20px 0; }
.continue-card { width:100%; min-height:92px; padding:10px; border:1px solid var(--border); border-radius:20px; display:grid; grid-template-columns:72px 1fr auto; align-items:center; gap:12px; background:white; text-align:left; cursor:pointer; }
.continue-card img { width:72px; height:72px; border-radius:14px; object-fit:cover; }
.continue-card small, .continue-card b, .continue-card span { display:block; }
.continue-card small { color:var(--orange-primary); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.continue-card b { margin-top:4px; font-size:16px; }
.continue-card div span { margin-top:3px; color:var(--text-secondary); font-size:10px; }
.continue-card > svg { width:19px; height:19px; color:var(--text-secondary); }

.result-close { position:absolute; z-index:9; top:calc(var(--safe-top) + 1px); left:16px; }
.result-actions { grid-template-columns:1.12fr .88fr; }
.secondary-result { min-height:52px; padding:0 10px; border:0; border-radius:17px; color:white; background:#2c2824; font-size:12px; font-weight:700; cursor:pointer; }

.catalog-screen { background:#f5f2ed; }
.catalog-head { padding:14px 20px 15px; }
.catalog-head h1 { margin:8px 0 20px; font-size:35px; line-height:1; letter-spacing:-.052em; }
.catalog-feed { padding:0 20px 24px; display:grid; gap:14px; }
.catalog-card { height:430px; position:relative; overflow:hidden; border-radius:var(--radius-lg); background:#ddd; box-shadow:var(--shadow-soft); }
.catalog-card.current { box-shadow:0 0 0 2px var(--orange-primary),var(--shadow-soft); }
.catalog-photo { width:100%; height:100%; padding:0; border:0; position:relative; overflow:hidden; background:transparent; color:white; text-align:left; cursor:pointer; }
.catalog-photo > img { width:100%; height:100%; object-fit:cover; }
.catalog-photo::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(14,11,9,.85)); }
.catalog-photo > div { position:absolute; z-index:2; left:18px; right:60px; bottom:18px; }
.catalog-photo small { color:#ffc8aa; font-size:10px; font-weight:740; letter-spacing:.09em; }
.catalog-photo h2 { margin-top:6px; font-size:31px; letter-spacing:-.05em; }
.catalog-photo p { margin-top:5px; color:rgba(255,255,255,.68); font-size:12px; }
.catalog-fav { position:absolute; z-index:4; right:15px; bottom:15px; width:46px; height:46px; border:1px solid rgba(255,255,255,.25); border-radius:50%; display:grid; place-items:center; color:white; background:rgba(18,14,11,.28); backdrop-filter:blur(12px); cursor:pointer; }
.catalog-fav svg { width:20px; height:20px; }
.catalog-fav.saved, .is-favorite { color:#ff8750 !important; background:white !important; }
.catalog-card[data-filter="natural"] img,.swipe-card[data-filter="natural"] img { filter:saturate(.95) contrast(1.01); }
.catalog-card[data-filter="cinema"] img,.swipe-card[data-filter="cinema"] img { filter:saturate(.75) contrast(1.15) sepia(.09); }
.catalog-card[data-filter="film"] img,.swipe-card[data-filter="film"] img { filter:saturate(.72) contrast(.98) brightness(1.06) sepia(.18); }
.catalog-card[data-filter="editorial"] img,.swipe-card[data-filter="editorial"] img { filter:saturate(.82) contrast(1.18) brightness(.98); }
.catalog-card[data-filter="portrait"] img,.swipe-card[data-filter="portrait"] img { filter:saturate(.9) contrast(1.04) brightness(1.05); }
.catalog-card[data-filter="night"] img,.swipe-card[data-filter="night"] img { filter:saturate(.66) contrast(1.2) brightness(.78) hue-rotate(-5deg); }
.catalog-card.locked .catalog-photo > img { filter:blur(8px) brightness(.74); transform:scale(1.04); }
.lock-badge { position:absolute; z-index:4; top:16px; left:16px; min-height:36px; padding:0 11px; border-radius:var(--radius-pill); display:flex; align-items:center; gap:7px; color:var(--text-primary); background:rgba(255,255,255,.92); font-size:10px; font-weight:720; }
.current-badge { position:absolute; z-index:4; top:16px; left:16px; min-height:34px; padding:0 10px; border-radius:var(--radius-pill); display:flex; align-items:center; color:white; background:var(--orange-primary); font-size:9px; font-weight:740; letter-spacing:.04em; }
.lock-badge svg { width:15px; height:15px; color:var(--orange-primary); }
.generation-card { min-height:78px; padding:14px; border:1px dashed rgba(25,24,22,.18); border-radius:18px; display:flex; align-items:center; gap:12px; background:rgba(255,255,255,.45); }
.generation-card b,.generation-card small { display:block; }
.generation-card b { font-size:13px; }
.generation-card small { margin-top:4px; color:var(--text-secondary); font-size:10px; }
.generation-dot { width:42px; height:42px; border-radius:14px; background:linear-gradient(90deg,#e9e4dc,#fff,#e9e4dc); background-size:200%; animation:skeleton-flow 1.5s linear infinite; }
@keyframes skeleton-flow { to { background-position:-200%; } }

.deck-segment { padding:0 16px 9px; }
.deck-screen .segmented { background:#28231f; }
.deck-screen .segment { color:rgba(255,255,255,.5); }
.deck-screen .segment.active { color:white; background:#3b3530; box-shadow:none; }
.deck-screen .deck { height:calc(100dvh - 229px); min-height:490px; }
.sheet-compare { height:360px; aspect-ratio:auto; margin:17px 0 13px; box-shadow:none; }

.create-head .segmented { margin-top:20px; }
.create-discover { padding:4px 20px 24px; position:relative; }
.discover-next-peek { position:absolute; z-index:1; top:14px; left:31px; right:7px; height:calc(100dvh - 516px); min-height:300px; max-height:470px; overflow:hidden; border-radius:var(--radius-lg); transform:translateX(10px) scale(.97); opacity:.55; }
.discover-next-peek img { width:100%; height:100%; object-fit:cover; }
.discover-card { z-index:2; width:calc(100% - 13px); height:calc(100dvh - 516px); min-height:300px; max-height:470px; position:relative; overflow:hidden; border-radius:var(--radius-lg); color:white; background:#333; box-shadow:var(--shadow-float); touch-action:pan-y; transition:transform 220ms ease, opacity 180ms ease; }
.discover-card img { width:100%; height:100%; object-fit:cover; pointer-events:none; }
.discover-card::after { content:""; position:absolute; inset:43% 0 0; background:linear-gradient(transparent,rgba(14,11,9,.85)); }
.discover-card div { position:absolute; z-index:2; left:18px; right:18px; bottom:20px; }
.discover-card small { color:#ffc6a7; font-size:10px; font-weight:730; letter-spacing:.1em; }
.discover-card h2 { margin-top:7px; font-size:32px; letter-spacing:-.05em; }
.discover-card p { margin-top:6px; color:rgba(255,255,255,.68); font-size:12px; line-height:1.4; }
.discover-hint { margin:10px 0 0; color:var(--text-secondary); text-align:center; font-size:10px; }
.discover-actions { padding:12px 18px 0; display:grid; grid-template-columns:52px 1fr 52px; align-items:center; gap:10px; }
.discover-actions button { min-height:52px; border:0; border-radius:17px; display:grid; place-items:center; background:white; cursor:pointer; font-size:12px; font-weight:720; }
.discover-actions button svg { width:20px; height:20px; }
.discover-actions .primary { color:white; background:var(--orange-primary); }
.discover-actions .saved { color:var(--orange-primary); }

.projects-list { padding:4px 20px 24px; display:grid; gap:12px; }
.project-card { width:100%; min-height:126px; padding:10px; border:1px solid var(--border); border-radius:20px; display:grid; grid-template-columns:104px 1fr auto; align-items:center; gap:12px; background:white; text-align:left; cursor:pointer; }
.project-card img { width:104px; height:104px; border-radius:14px; object-fit:cover; }
.project-card small { color:var(--success); font-size:10px; font-weight:700; }
.project-card h2 { margin-top:6px; font-size:19px; letter-spacing:-.035em; }
.project-card p { margin-top:6px; color:var(--text-secondary); font-size:10px; }
.project-card > svg { width:18px; height:18px; color:var(--text-secondary); }
.status-dot { display:inline-block; width:6px; height:6px; margin-right:4px; border-radius:50%; background:var(--success); }
.project-detail { padding-bottom:30px; }
.project-hero { padding:4px 20px 0; }
.project-hero .before-after { box-shadow:var(--shadow-soft); }
.project-info { padding:22px 20px; }
.project-info h1 { margin-top:8px; font-size:35px; letter-spacing:-.052em; }
.project-info > p { margin-top:6px; color:var(--text-secondary); font-size:12px; }
.project-actions { margin-top:18px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.project-actions button { padding:0 10px; }
.project-favorites { margin:0 20px; padding:18px; border-radius:20px; background:white; border:1px solid var(--border); }
.project-favorites h2 { font-size:18px; }
.project-favorites div { margin-top:14px; display:flex; align-items:center; gap:8px; }
.project-favorites svg { width:21px; height:21px; color:var(--orange-primary); }
.project-favorites small { color:var(--text-secondary); font-size:11px; }

.profile-intro { padding:22px 20px 18px; display:flex; align-items:center; gap:13px; }
.profile-avatar { width:62px; height:62px; border-radius:21px; display:grid; place-items:center; color:white; background:var(--text-primary); font-size:24px; font-weight:780; }
.profile-intro span { color:var(--text-secondary); font-size:10px; }
.profile-intro h1 { margin-top:3px; font-size:27px; letter-spacing:-.045em; }
.credits-panel { margin:4px 20px 18px; padding:18px; border-radius:var(--radius-lg); color:white; background:#201d1a; display:flex; align-items:center; justify-content:space-between; }
.credits-panel > div { display:grid; grid-template-columns:46px 1fr; grid-template-rows:auto auto; column-gap:11px; }
.credits-orb { grid-row:1/3; width:46px; height:46px; display:grid; place-items:center; border-radius:15px; color:#ff9b65; background:rgba(255,255,255,.09); }
.credits-orb svg { width:22px; height:22px; }
.credits-panel small { color:rgba(255,255,255,.52); font-size:10px; }
.credits-panel strong { font-size:17px; }
.credits-panel button { min-height:44px; padding:0 13px; border:0; border-radius:13px; color:var(--text-primary); background:white; font-size:11px; font-weight:720; }
.profile-menu { margin:0 20px; border:1px solid var(--border); border-radius:20px; overflow:hidden; background:white; }
.profile-menu button { width:100%; min-height:70px; padding:10px 13px; border:0; border-bottom:1px solid var(--border); display:grid; grid-template-columns:39px 1fr auto; align-items:center; gap:10px; background:white; text-align:left; cursor:pointer; }
.profile-menu button:last-child { border-bottom:0; }
.profile-menu button > span { width:38px; height:38px; border-radius:12px; display:grid; place-items:center; color:var(--orange-primary); background:var(--orange-soft); }
.profile-menu svg { width:19px; height:19px; }
.profile-menu button > svg { color:var(--text-secondary); }
.profile-menu b,.profile-menu small { display:block; }
.profile-menu b { font-size:13px; }
.profile-menu small { margin-top:3px; color:var(--text-secondary); font-size:10px; }
.profile-secondary { padding:18px 20px 24px; display:grid; gap:4px; }
.profile-secondary > button:not(.primary-button) { min-height:44px; border:0; color:var(--text-secondary); background:transparent; font-size:11px; }
.profile-secondary > button:last-child:not(.primary-button) { color:var(--error); }

.pricing-head { padding-top:30px; }
.pricing-list { padding:0 20px 20px; display:grid; gap:14px; }
.pricing-card { position:relative; padding:20px; border:1px solid var(--border); border-radius:var(--radius-lg); background:white; box-shadow:var(--shadow-soft); }
.pricing-card.featured { border-color:rgba(217,78,18,.28); }
.popular { position:absolute; top:15px; right:15px; padding:6px 8px; border-radius:var(--radius-pill); color:var(--orange-primary); background:var(--orange-soft); font-size:9px; font-weight:750; }
.pricing-card small { color:var(--text-secondary); font-size:10px; }
.pricing-card h2 { margin-top:8px; font-size:28px; letter-spacing:-.045em; }
.pricing-card p { margin-top:5px; max-width:250px; color:var(--text-secondary); font-size:12px; line-height:1.4; }
.pricing-card > strong { display:block; margin-top:20px; font-size:36px; letter-spacing:-.05em; }
.pricing-card > strong span { font-size:12px; font-weight:650; letter-spacing:0; }
.pricing-card ul, .paywall-list { margin:18px 0; padding:0; display:grid; gap:9px; list-style:none; }
.pricing-card li, .paywall-list li { display:flex; align-items:center; gap:8px; color:var(--text-secondary); font-size:11px; }
.pricing-card li svg, .paywall-list li svg { width:16px; height:16px; color:var(--success); }
.pricing-note { padding:0 24px 32px; color:var(--text-secondary); text-align:center; font-size:10px; line-height:1.4; }

.product-sheet { max-height:min(90dvh,760px); overflow:auto; overscroll-behavior:contain; }
.product-sheet > .eyebrow { margin-top:2px; }
.product-sheet > h2 { line-height:1.05; }
.product-sheet > .primary-button, .product-sheet > .secondary-button, .product-sheet > .danger-button { margin-top:10px; }
.social-auth { margin-top:18px; display:grid; gap:8px; }
.social-auth button { min-height:50px; border:1px solid var(--border); border-radius:15px; background:white; font-size:12px; font-weight:680; cursor:pointer; }
.social-auth b { margin-right:8px; }
.auth-divider { height:35px; display:flex; align-items:center; justify-content:center; color:var(--text-secondary); font-size:9px; }
.auth-divider::before,.auth-divider::after { content:""; height:1px; flex:1; background:var(--border); }
.auth-divider span { padding:0 9px; }
.field-label { display:block; margin-bottom:10px; color:var(--text-secondary); font-size:10px; font-weight:650; }
.auth-input { width:100%; height:50px; margin-top:6px; padding:0 13px; border:1px solid var(--border); border-radius:14px; color:var(--text-primary); background:#faf8f5; font-size:13px; }
.forgot-link,.auth-switch { min-height:44px; border:0; background:transparent; font-size:11px; cursor:pointer; }
.forgot-link { width:100%; margin-top:-4px; color:var(--orange-primary); text-align:right; }
.auth-switch { width:100%; margin-top:5px; color:var(--text-secondary); }
.sheet-legal { display:block; margin-top:7px; color:#99958f; text-align:center; font-size:8px; line-height:1.4; }
.success-orb { width:68px; height:68px; margin:2px 0 18px; border-radius:22px; display:grid; place-items:center; color:white; background:var(--success); }
.success-orb svg { width:31px; height:31px; }
.paywall-plan { min-height:72px; margin-top:18px; padding:13px; border-radius:17px; display:flex; align-items:center; justify-content:space-between; background:var(--surface-secondary); }
.paywall-plan b,.paywall-plan span { display:block; }
.paywall-plan span { margin-top:4px; color:var(--text-secondary); font-size:10px; }
.paywall-plan strong { font-size:22px; color:var(--orange-primary); }
.sheet-menu { margin-top:18px; display:grid; border-top:1px solid var(--border); }
.sheet-menu button { min-height:52px; padding:0 2px; border:0; border-bottom:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; background:white; font-size:13px; font-weight:650; }
.sheet-menu svg { width:18px; height:18px; color:var(--text-secondary); }
.sheet-menu-actions { margin-top:14px; display:grid; gap:8px; }
.sheet-menu-actions .primary-button,.sheet-menu-actions .secondary-button { margin-top:0; }
.preference-list { margin:18px 0; display:grid; }
.preference-list label { min-height:66px; border-bottom:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; gap:12px; }
.preference-list b,.preference-list small { display:block; }
.preference-list b { font-size:13px; }
.preference-list small { margin-top:4px; color:var(--text-secondary); font-size:10px; }
.preference-list input { width:20px; height:20px; accent-color:var(--orange-primary); }
.danger-button { min-height:54px; border:0; border-radius:17px; color:white; background:var(--error); font-size:14px; font-weight:720; }

.cookie-consent { position:fixed; z-index:80; left:50%; bottom:calc(10px + var(--safe-bottom)); width:min(calc(100% - 20px),410px); transform:translateX(-50%); padding:14px; border:1px solid rgba(255,255,255,.1); border-radius:19px; color:white; background:rgba(30,26,23,.96); box-shadow:var(--shadow-float); backdrop-filter:blur(18px); animation:cookie-in 280ms ease both; }
@keyframes cookie-in { from { opacity:0; transform:translate(-50%,18px); } }
.cookie-consent p { font-size:11px; line-height:1.45; color:rgba(255,255,255,.72); }
.cookie-consent div { margin-top:11px; display:grid; grid-template-columns:1fr 1fr; gap:6px; }
.cookie-consent button { min-height:44px; border:0; border-radius:12px; color:white; background:#3b3530; font-size:10px; font-weight:680; }
.cookie-consent button:first-child { background:var(--orange-primary); }
.cookie-consent button:last-child { grid-column:1/-1; min-height:44px; color:rgba(255,255,255,.6); background:transparent; }

@media (max-width:370px) {
  .marketing-header { padding-left:15px; padding-right:15px; }
  .trust-row { flex-wrap:wrap; }
  .usecase-scroll { margin-left:-16px; margin-right:-16px; padding-left:16px; }
  .catalog-feed,.projects-list,.create-discover,.pricing-list { padding-left:16px; padding-right:16px; }
  .catalog-card { height:400px; }
  .discover-card,.discover-next-peek { min-height:290px; }
  .project-card { grid-template-columns:90px 1fr auto; }
  .project-card img { width:90px; height:96px; }
}

/* Public Landing — critical mobile-first iteration */
.landing-v3 { background:#f8f6f2; }
body:has(.landing-v3) { overflow-x:hidden; }
#app:has(.landing-v3) { overflow:visible; }
.landing-v3 em { font-style:normal; color:var(--orange-primary); }
.landing-v3 .marketing-header { min-height:68px; transition:min-height 220ms ease,background 220ms ease,box-shadow 220ms ease; }
.header-try { width:0; min-height:44px; padding:0; overflow:hidden; border:0; border-radius:13px; opacity:0; color:white; background:var(--orange-primary); font-size:11px; font-weight:750; white-space:nowrap; transition:width 220ms ease,padding 220ms ease,opacity 180ms ease; cursor:pointer; }
.marketing-header.is-compact { min-height:60px; background:rgba(248,246,242,.92); box-shadow:0 10px 30px rgba(28,23,18,.08); }
.marketing-header.is-compact .header-entry { display:none; }
.marketing-header.is-compact .header-try { width:93px; padding:0 12px; opacity:1; }
.marketing-header.is-compact .brand { font-size:18px; }
.marketing-header.is-compact .brand-mark { width:26px; height:26px; }

.landing-hero-v3 { padding:28px 20px 36px; background:radial-gradient(circle at 88% 5%,rgba(230,85,20,.08),transparent 29%),#f8f6f2; }
.hero-category { color:var(--orange-primary); }
.landing-hero-v3 h1 { margin-top:19px; font-size:clamp(46px,12vw,52px); line-height:.92; letter-spacing:-.072em; font-weight:800; }
.hero-copy { margin-top:18px; max-width:355px; color:#5e5a55; font-size:16px; line-height:1.48; letter-spacing:-.015em; }
.hero-free { margin-top:17px; }
.hero-actions { margin-top:22px; }
.hero-actions .link-button { margin:5px 0 3px; }
.hero-account-note { color:#8b857e; text-align:center; font-size:10px; }
.hero-product { margin-top:21px; position:relative; }
.hero-proof { aspect-ratio:1 / 1.08; box-shadow:0 22px 52px rgba(31,24,18,.17); }
.hero-proof .compare-hint { bottom:67px; }
.hero-result-bar { position:absolute; z-index:8; left:11px; right:11px; bottom:11px; min-height:50px; padding:8px 11px; border:1px solid rgba(255,255,255,.25); border-radius:15px; display:flex; align-items:center; justify-content:space-between; color:white; background:rgba(25,20,17,.56); backdrop-filter:blur(16px); }
.hero-result-bar > span { display:grid; grid-template-columns:7px 1fr; column-gap:7px; }
.hero-result-bar i { grid-row:1/3; align-self:center; width:7px; height:7px; border-radius:50%; background:#ff7b3c; box-shadow:0 0 0 4px rgba(255,123,60,.15); }
.hero-result-bar b,.hero-result-bar small { display:block; }
.hero-result-bar b { font-size:12px; }
.hero-result-bar small { margin-top:2px; color:rgba(255,255,255,.63); font-size:9px; }
.hero-result-bar > strong { font-size:11px; }
.hero-trust { padding:15px 2px 0; display:grid; grid-template-columns:repeat(3,1fr); gap:7px; color:#77716b; font-size:9px; line-height:1.3; }
.hero-trust span { display:flex; align-items:flex-start; gap:4px; }
.hero-trust svg { width:13px; height:13px; flex:0 0 auto; color:var(--success); }

.landing-formula { padding:76px 20px; background:white; }
.landing-formula h2,.analysis-chapter h2,.smart-proof-v3 h2,.choice-chapter h2,.photoshoot-chapter h2,.gallery-chapter h2,.testimonial-chapter h2,.start-steps h2,.landing-pricing h2,.free-trial-v3 h2,.landing-faq h2,.landing-final-v3 h2 { margin-top:13px; font-size:36px; line-height:1; letter-spacing:-.058em; }
.landing-formula ol { margin:31px 0 0; padding:0; list-style:none; position:relative; }
.landing-formula ol::before { content:""; position:absolute; left:21px; top:22px; bottom:22px; width:1px; background:linear-gradient(var(--orange-primary),rgba(217,78,18,.12)); }
.landing-formula li { min-height:82px; position:relative; display:grid; grid-template-columns:44px 1fr; align-items:start; gap:13px; }
.landing-formula li > span { width:44px; height:44px; border:1px solid rgba(217,78,18,.17); border-radius:15px; display:grid; place-items:center; color:var(--orange-primary); background:#fff8f3; font-size:10px; font-weight:800; }
.landing-formula b,.landing-formula small { display:block; }
.landing-formula b { margin-top:2px; font-size:16px; }
.landing-formula small { margin-top:5px; color:var(--text-secondary); font-size:11px; }
.landing-relief > .subtitle { margin-top:15px; max-width:350px; }
.editor-relief { margin-top:28px; padding:13px; border:1px solid var(--border); border-radius:25px; display:grid; grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr); align-items:center; gap:7px; background:#f5f1eb; }
.editor-clutter,.assistant-calm { min-height:176px; padding:13px; border-radius:18px; }
.editor-clutter { color:#706a64; background:#e8e3dc; }
.editor-clutter > small,.assistant-calm > small { display:block; font-size:8px; font-weight:800; letter-spacing:.1em; }
.editor-clutter > div { margin-top:13px; display:flex; flex-wrap:wrap; gap:6px; }
.editor-clutter span { min-height:27px; padding:0 8px; border:1px solid rgba(25,24,22,.09); border-radius:999px; display:inline-flex; align-items:center; background:rgba(255,255,255,.55); font-size:8px; }
.relief-arrow { width:36px; height:36px; border-radius:50%; display:grid; place-items:center; color:white; background:var(--orange-primary); box-shadow:0 8px 18px rgba(190,64,12,.23); }
.relief-arrow svg { width:17px; height:17px; }
.assistant-calm { display:flex; flex-direction:column; justify-content:center; color:white; background:#211d1a; }
.assistant-calm > small { color:#ff9967; }
.assistant-calm strong { margin-top:16px; font-size:19px; line-height:1.05; letter-spacing:-.04em; }
.assistant-calm span { margin-top:9px; color:rgba(255,255,255,.57); font-size:9px; line-height:1.4; }
.landing-relief .relief-flow { margin-top:27px; }

.analysis-chapter { padding:78px 20px 70px; color:white; background:#1b1815; }
.chapter-copy .eyebrow { color:#ff9561; }
.chapter-copy h2 { color:white; }
.chapter-copy p { margin-top:15px; max-width:330px; color:rgba(255,255,255,.58); font-size:14px; line-height:1.5; }
.analysis-product { height:520px; margin-top:30px; position:relative; overflow:hidden; border-radius:30px; background:#29231f; box-shadow:0 24px 60px rgba(0,0,0,.26); }
.analysis-product > img { width:100%; height:100%; object-fit:cover; opacity:.72; }
.analysis-product::after { content:""; position:absolute; inset:40% 0 0; background:linear-gradient(transparent,rgba(17,14,12,.92)); }
.analysis-scan { position:absolute; z-index:2; top:15%; left:7%; right:7%; height:1px; opacity:0; background:linear-gradient(90deg,transparent,#ff8a4e,transparent); box-shadow:0 0 20px rgba(255,120,55,.9); }
.analysis-product.is-visible .analysis-scan { animation:landing-scan 2.7s ease-in-out 1 both; }
@keyframes landing-scan { 0% { opacity:0; transform:translateY(0); } 12% { opacity:1; } 80% { opacity:.9; transform:translateY(285px); } 100% { opacity:0; transform:translateY(320px); } }
.analysis-point { position:absolute; z-index:4; min-height:35px; padding:0 11px; border:1px solid rgba(255,255,255,.18); border-radius:999px; display:flex; align-items:center; opacity:0; color:white; background:rgba(25,20,17,.52); backdrop-filter:blur(15px); font-size:10px; font-weight:670; }
.analysis-point i { width:6px; height:6px; margin-right:7px; border-radius:50%; background:#ff8347; }
.analysis-point.p1 { top:16%; left:7%; }
.analysis-point.p2 { top:33%; right:6%; }
.analysis-point.p3 { top:49%; left:7%; }
.analysis-point.p4 { top:62%; right:7%; }
.analysis-product.is-visible .analysis-point { animation:analysis-point-in 420ms ease forwards; }
.analysis-product.is-visible .p1 { animation-delay:420ms; }
.analysis-product.is-visible .p2 { animation-delay:820ms; }
.analysis-product.is-visible .p3 { animation-delay:1220ms; }
.analysis-product.is-visible .p4 { animation-delay:1620ms; }
@keyframes analysis-point-in { from { opacity:0; transform:translateY(7px) scale(.96); } to { opacity:1; transform:none; } }
.analysis-result { position:absolute; z-index:5; left:18px; right:18px; bottom:20px; padding:16px; border:1px solid rgba(255,255,255,.13); border-radius:19px; opacity:0; background:rgba(28,23,19,.68); backdrop-filter:blur(18px); }
.analysis-product.is-visible .analysis-result { animation:analysis-result-in 500ms ease 2.05s forwards; }
@keyframes analysis-result-in { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
.analysis-result small { color:#ff9b69; font-size:9px; font-weight:780; letter-spacing:.12em; }
.analysis-result strong { display:block; margin-top:7px; font-size:19px; line-height:1.12; letter-spacing:-.035em; }
.personalization-proof { margin-top:18px; padding:18px; border:1px solid rgba(255,255,255,.1); border-radius:25px; background:#26211d; }
.personalization-proof > div > small { color:#ff9561; font-size:8px; font-weight:800; letter-spacing:.1em; }
.personalization-proof h3 { margin-top:8px; font-size:22px; line-height:1.05; letter-spacing:-.04em; }
.personalization-proof > div > p { margin-top:7px; color:rgba(255,255,255,.52); font-size:10px; line-height:1.45; }
.personalization-proof ul { margin:17px 0 0; padding:0; display:grid; gap:8px; list-style:none; }
.personalization-proof li { min-height:70px; padding:7px; border:1px solid rgba(255,255,255,.08); border-radius:17px; display:grid; grid-template-columns:56px 1fr; align-items:center; gap:11px; background:rgba(255,255,255,.035); }
.personalization-proof img { width:56px; height:56px; border-radius:13px; object-fit:cover; }
.personalization-proof b,.personalization-proof li small { display:block; }
.personalization-proof b { font-size:13px; }
.personalization-proof li small { margin-top:5px; color:rgba(255,255,255,.52); font-size:9px; line-height:1.35; }

.smart-proof-v3 { padding:82px 20px; background:#f8f6f2; }
.smart-proof-v3 > .subtitle { margin-top:15px; }
.smart-proof-compare { margin-top:29px; aspect-ratio:4/5.25; }
.improvement-list { margin:18px 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:8px; list-style:none; }
.improvement-list li { min-height:76px; padding:11px; border:1px solid var(--border); border-radius:17px; display:flex; align-items:flex-start; gap:9px; background:white; }
.improvement-list > li > svg { width:18px; height:18px; flex:0 0 auto; color:var(--orange-primary); }
.improvement-list b,.improvement-list small { display:block; }
.improvement-list b { font-size:11px; }
.improvement-list small { margin-top:4px; color:var(--text-secondary); font-size:9px; line-height:1.35; }
.secondary-cta { min-height:55px; margin-top:13px; padding:0 17px; border:1px solid rgba(217,78,18,.18); border-radius:17px; display:flex; align-items:center; justify-content:space-between; color:var(--orange-primary); background:#fff5ee; font-size:13px; font-weight:750; cursor:pointer; }
.secondary-cta svg { width:18px; height:18px; }

.choice-chapter { padding:80px 20px; background:#eee9e2; }
.choice-chapter > .subtitle { margin-top:15px; }
.landing-demo { margin-top:27px; }
.choice-tabs { height:54px; padding:5px; border-radius:17px; display:grid; grid-template-columns:1fr 1fr; gap:5px; background:#ded8cf; }
.choice-tabs button { min-height:44px; border:0; border-radius:13px; display:flex; align-items:center; justify-content:center; gap:7px; color:#6d6760; background:transparent; font-size:11px; font-weight:720; cursor:pointer; }
.choice-tabs button.active { color:var(--text-primary); background:white; box-shadow:0 7px 18px rgba(28,23,18,.08); }
.choice-tabs svg { width:16px; height:16px; }
.landing-catalog-view { margin-top:12px; display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.landing-result-tile { height:242px; padding:0; border:2px solid transparent; border-radius:20px; position:relative; overflow:hidden; color:white; background:#d5cfc7; text-align:left; cursor:pointer; transition:transform 160ms ease,border-color 160ms ease; }
.landing-result-tile.active { border-color:var(--orange-primary); transform:translateY(-2px); }
.landing-result-tile img { width:100%; height:100%; object-fit:cover; }
.landing-result-tile::after { content:""; position:absolute; inset:50% 0 0; background:linear-gradient(transparent,rgba(15,12,10,.78)); }
.landing-result-tile > span { position:absolute; z-index:2; left:13px; right:13px; bottom:13px; }
.landing-result-tile small,.landing-result-tile b { display:block; }
.landing-result-tile small { color:#ffc3a1; font-size:8px; font-weight:750; }
.landing-result-tile b { margin-top:5px; font-size:18px; letter-spacing:-.035em; }
.landing-demo.show-catalog .landing-swipe-view,.landing-demo.show-swipe .landing-catalog-view { display:none; }
.landing-swipe-view { margin-top:14px; }
.landing-swipe-stage { height:438px; position:relative; }
.landing-swipe-card,.landing-swipe-peek { position:absolute; top:0; bottom:0; overflow:hidden; border-radius:26px; background:#d1cbc4; box-shadow:0 20px 46px rgba(31,24,18,.16); }
.landing-swipe-peek { z-index:1; left:25px; right:-9px; transform:translateX(8px) scale(.96) rotate(1deg); opacity:.62; }
.landing-swipe-card { z-index:2; left:0; right:12px; touch-action:pan-y; user-select:none; transition:transform 190ms ease,opacity 160ms ease; }
.landing-demo.show-swipe:not(.has-interacted) .landing-swipe-card { animation:landing-swipe-nudge 1.45s cubic-bezier(.2,.75,.25,1) .45s 1 both; }
@keyframes landing-swipe-nudge { 0%,100% { transform:none; } 42% { transform:translateX(20px) rotate(1.5deg); } 72% { transform:translateX(-7px) rotate(-.5deg); } }
.landing-swipe-card.dragging { transition:none; }
.landing-swipe-card img,.landing-swipe-peek img { width:100%; height:100%; object-fit:cover; pointer-events:none; }
.landing-swipe-card::after { content:""; position:absolute; inset:43% 0 0; background:linear-gradient(transparent,rgba(14,11,9,.88)); }
.landing-swipe-card > div { position:absolute; z-index:3; left:18px; right:18px; bottom:19px; color:white; }
.landing-swipe-card > div small { color:#ffbf9b; font-size:9px; font-weight:750; letter-spacing:.08em; }
.landing-swipe-card h3 { margin-top:7px; font-size:33px; line-height:1; letter-spacing:-.052em; }
.landing-swipe-card p { margin-top:6px; color:rgba(255,255,255,.68); font-size:11px; line-height:1.4; }
.landing-swipe-actions { margin-top:12px; display:grid; grid-template-columns:52px 1fr 52px; gap:10px; }
.landing-swipe-actions button { min-height:52px; border:0; border-radius:17px; display:grid; place-items:center; background:white; cursor:pointer; }
.landing-swipe-actions .demo-like { background:var(--orange-primary); color:white; }
.landing-swipe-actions .demo-like.active { color:var(--orange-primary); background:#fff3eb; }
.landing-swipe-actions svg { width:20px; height:20px; }
.swipe-instruction { margin-top:9px; color:var(--text-secondary); text-align:center; font-size:9px; }
.demo-conversion { max-height:0; margin-top:0; overflow:hidden; opacity:0; transition:max-height 320ms ease,margin 320ms ease,opacity 220ms ease; }
.demo-conversion.visible { max-height:130px; margin-top:22px; opacity:1; }
.demo-conversion p { margin-bottom:10px; text-align:center; font-size:12px; font-weight:650; }
.choice-chapter > h2 em { color:#be430f; }
.landing-v3 [data-filter="natural"] img { filter:saturate(.94) contrast(1.02) brightness(1.02); }
.landing-v3 [data-filter="cinema"] img { filter:saturate(.72) contrast(1.17) sepia(.08); }
.landing-v3 [data-filter="film"] img { filter:saturate(.76) contrast(.97) brightness(1.05) sepia(.17); }
.landing-v3 [data-filter="editorial"] img { filter:saturate(.84) contrast(1.18); }

.photoshoot-chapter { padding:82px 20px 76px; color:white; background:#201b17; }
.photoshoot-story { margin:30px -20px 0; padding:0 20px; overflow:hidden; }
.photoshoot-original { width:132px; position:relative; }
.photoshoot-original img { width:132px; height:166px; border-radius:20px; object-fit:cover; filter:saturate(.78) brightness(.9); }
.photoshoot-original span { display:block; margin-top:7px; color:rgba(255,255,255,.52); font-size:9px; text-align:center; }
.story-connector { width:42px; height:42px; margin:13px 0 12px 45px; border:1px solid rgba(255,255,255,.12); border-radius:50%; display:grid; place-items:center; color:#ff9a67; background:rgba(255,255,255,.05); transform:rotate(90deg); }
.story-connector svg { width:18px; height:18px; }
.photoshoot-results { display:flex; gap:10px; overflow:visible; }
.photoshoot-results article { flex:0 0 66%; height:350px; position:relative; overflow:hidden; border-radius:25px; }
.photoshoot-results article { opacity:0; transform:translateY(24px) scale(.97); }
.photoshoot-chapter.is-visible .photoshoot-results article { animation:photoshoot-stage-in 620ms cubic-bezier(.2,.8,.25,1) forwards; }
.photoshoot-chapter.is-visible .photoshoot-results article:nth-child(1) { animation-delay:220ms; }
.photoshoot-chapter.is-visible .photoshoot-results article:nth-child(2) { animation-delay:390ms; }
.photoshoot-chapter.is-visible .photoshoot-results article:nth-child(3) { animation-delay:560ms; }
.photoshoot-chapter.is-visible .story-connector { animation:connector-pulse 620ms ease 80ms both; }
@keyframes photoshoot-stage-in { to { opacity:1; transform:none; } }
@keyframes connector-pulse { 0% { opacity:.2; transform:rotate(90deg) scale(.72); } 70% { opacity:1; transform:rotate(90deg) scale(1.08); } 100% { opacity:1; transform:rotate(90deg); } }
.photoshoot-results img { width:100%; height:100%; object-fit:cover; }
.photoshoot-results article::after { content:""; position:absolute; inset:50% 0 0; background:linear-gradient(transparent,rgba(14,11,9,.82)); }
.photoshoot-results span { position:absolute; z-index:2; left:16px; bottom:15px; font-size:20px; font-weight:760; letter-spacing:-.04em; }
.light-cta { min-height:55px; margin-top:17px; padding:0 17px; border:0; border-radius:17px; display:flex; align-items:center; justify-content:space-between; color:var(--text-primary); background:white; font-size:13px; font-weight:750; cursor:pointer; }
.light-cta svg { width:18px; height:18px; color:var(--orange-primary); }

.gallery-chapter { padding:82px 20px; background:#fbfaf7; }
.gallery-chapter > .subtitle { margin-top:14px; }
.gallery-ribbon { margin:26px -20px 0; padding:0 20px; display:flex; gap:10px; overflow:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
.gallery-ribbon::-webkit-scrollbar { display:none; }
.gallery-card { flex:0 0 72%; height:380px; position:relative; overflow:hidden; border-radius:25px; scroll-snap-align:start; }
.gallery-card.size-1 { flex-basis:58%; height:338px; align-self:end; }
.gallery-card.size-2 { flex-basis:67%; height:360px; }
.gallery-card img { width:100%; height:100%; object-fit:cover; }
.gallery-card::after { content:""; position:absolute; inset:48% 0 0; background:linear-gradient(transparent,rgba(13,10,8,.82)); }
.gallery-card div { position:absolute; z-index:2; left:16px; right:16px; bottom:15px; color:white; }
.gallery-card b,.gallery-card span { display:block; }
.gallery-card b { font-size:23px; letter-spacing:-.04em; }
.gallery-card span { margin-top:4px; color:rgba(255,255,255,.66); font-size:10px; }

.testimonial-chapter { padding:80px 20px; background:#f0ebe4; }
.mock-disclosure { margin-top:14px; padding:11px 12px; border:1px dashed rgba(25,24,22,.16); border-radius:14px; color:#77716b; background:rgba(255,255,255,.45); font-size:9px; line-height:1.45; }
.testimonial-scroll { margin:22px -20px 0; padding:0 20px; display:flex; gap:11px; overflow:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
.testimonial-scroll::-webkit-scrollbar { display:none; }
.testimonial-card { flex:0 0 87%; padding:12px 12px 18px; border:1px solid rgba(25,24,22,.09); border-radius:24px; background:white; scroll-snap-align:start; box-shadow:0 12px 35px rgba(33,27,21,.07); }
.testimonial-photo { height:244px; position:relative; overflow:hidden; border-radius:18px; }
.testimonial-photo img { width:100%; height:100%; object-fit:cover; }
.testimonial-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 68%,rgba(14,11,9,.55)); }
.testimonial-photo span { position:absolute; z-index:2; left:11px; bottom:10px; padding:5px 7px; border-radius:999px; color:white; background:rgba(20,16,13,.36); font-size:8px; font-weight:780; letter-spacing:.1em; }
.testimonial-card > small { display:block; margin:14px 3px 0; color:var(--orange-primary); font-size:9px; font-weight:740; text-transform:uppercase; letter-spacing:.08em; }
.testimonial-card blockquote { margin:10px 3px 0; font-size:17px; line-height:1.34; letter-spacing:-.025em; font-weight:660; }
.testimonial-card > p { margin:11px 3px 0; color:#918b84; font-size:8px; }

.start-steps { padding:80px 20px; background:white; }
.start-steps ol { margin:28px 0 0; padding:0; display:grid; gap:10px; list-style:none; }
.start-steps li { min-height:76px; padding:12px; border:1px solid var(--border); border-radius:19px; display:grid; grid-template-columns:46px 1fr; align-items:center; gap:12px; }
.start-steps li > span { width:46px; height:46px; border-radius:15px; display:grid; place-items:center; color:var(--orange-primary); background:var(--orange-soft); }
.start-steps svg { width:20px; height:20px; }
.start-steps b,.start-steps small { display:block; }
.start-steps b { font-size:14px; }
.start-steps small { margin-top:4px; color:var(--text-secondary); font-size:10px; }

.landing-pricing { padding:80px 20px; background:#f7eee8; }
.landing-pricing > .subtitle { margin-top:14px; }
.free-plan { margin-top:26px; padding:19px; border-radius:25px; position:relative; color:white; background:#211d1a; box-shadow:var(--shadow-soft); }
.free-plan > div small { color:#ff9d6b; font-size:9px; font-weight:780; letter-spacing:.11em; }
.free-plan > div strong { display:block; margin-top:8px; font-size:31px; letter-spacing:-.05em; }
.free-plan > div p { margin-top:7px; max-width:260px; color:rgba(255,255,255,.57); font-size:11px; line-height:1.45; }
.free-plan > span { position:absolute; top:18px; right:18px; width:38px; height:38px; border-radius:13px; display:grid; place-items:center; color:#ff9c67; background:rgba(255,255,255,.08); }
.free-plan > span svg { width:18px; height:18px; }
.free-plan .primary-button { margin-top:18px; }
.pricing-model-tabs { min-height:54px; margin-top:18px; padding:5px; border-radius:17px; display:grid; grid-template-columns:1fr 1fr; gap:5px; background:#e5d9d0; }
.pricing-model-tabs button { min-height:44px; border:0; border-radius:13px; color:#756d67; background:transparent; font-size:10px; font-weight:740; cursor:pointer; }
.pricing-model-tabs button.active { color:var(--text-primary); background:white; box-shadow:0 7px 18px rgba(28,23,18,.08); }
.paid-plans { margin:12px -20px 0; padding:0 20px 4px; display:flex; gap:10px; overflow:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
.paid-plans::-webkit-scrollbar { display:none; }
.paid-plan { flex:0 0 78%; min-height:278px; padding:18px; border:1px solid rgba(25,24,22,.09); border-radius:22px; position:relative; background:white; scroll-snap-align:start; }
.paid-plan.featured { border-color:rgba(217,78,18,.27); }
.plan-label { position:absolute; top:13px; right:13px; padding:5px 7px; border-radius:999px; color:var(--orange-primary); background:var(--orange-soft); font-size:7px; font-weight:760; }
.paid-plan > small { color:var(--text-secondary); font-size:9px; }
.paid-plan h3 { margin-top:9px; font-size:24px; letter-spacing:-.04em; }
.paid-plan > strong { display:block; margin-top:24px; font-size:35px; letter-spacing:-.05em; }
.paid-plan > strong span { font-size:11px; letter-spacing:0; }
.paid-plan p { margin-top:9px; min-height:42px; color:var(--text-secondary); font-size:10px; line-height:1.4; }
.paid-plan ul { margin:10px 0 0; padding:0; display:grid; gap:6px; color:#635d57; list-style:none; font-size:9px; }
.paid-plan li { display:flex; align-items:center; gap:6px; }
.paid-plan li svg { width:13px; height:13px; color:var(--success); }
.paid-plan button { width:100%; min-height:48px; margin-top:17px; border:1px solid rgba(25,24,22,.11); border-radius:14px; color:var(--text-primary); background:#f7f4ef; font-size:11px; font-weight:720; cursor:pointer; }
.paid-plans .paid-plan { display:none; }
.paid-plans.pricing-mode-packs [data-plan-model="packs"] { display:block; }
.paid-plans.pricing-mode-subscription [data-plan-model="subscription"] { display:block; flex-basis:100%; }
.credit-explainer { margin-top:14px; padding:11px 12px; border:1px solid rgba(25,24,22,.08); border-radius:14px; color:#716a64; background:rgba(255,255,255,.46); font-size:9px; line-height:1.45; }
.pricing-honesty { margin-top:12px; color:#867f78; text-align:center; font-size:8px; line-height:1.45; }

.free-trial-v3 { padding:78px 20px; color:white; background:#1b1815; }
.trial-visual { margin-bottom:26px; }
.trial-compare { aspect-ratio:1.12/1; box-shadow:0 22px 55px rgba(0,0,0,.3); }
.trial-copy > p { margin-top:14px; color:rgba(255,255,255,.61); font-size:13px; line-height:1.5; }
.trial-copy .primary-button { margin-top:21px; }
.trial-copy > small { display:block; margin-top:10px; color:rgba(255,255,255,.43); text-align:center; font-size:9px; }

.landing-faq { padding:80px 20px; background:#faf8f4; }
.faq-list { margin-top:28px; border-top:1px solid var(--border); }
.faq-list details { border-bottom:1px solid var(--border); }
.faq-list summary { min-height:72px; display:grid; grid-template-columns:28px 1fr 24px; align-items:center; gap:8px; list-style:none; cursor:pointer; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary > span { color:var(--orange-primary); font-size:9px; font-weight:780; }
.faq-list h3 { font-size:14px; line-height:1.25; letter-spacing:-.02em; }
.faq-list summary i { width:24px; height:24px; display:grid; place-items:center; font-style:normal; color:var(--text-secondary); transition:transform 180ms ease; }
.faq-list details[open] summary i { transform:rotate(45deg); }
.faq-list details > p { padding:0 32px 18px 36px; color:var(--text-secondary); font-size:11px; line-height:1.5; }

.landing-final-v3 { padding:76px 20px 72px; text-align:center; color:white; background:radial-gradient(circle at 50% 13%,rgba(232,83,16,.3),transparent 24%),#181512; }
.final-orb { width:98px; height:98px; margin:0 auto 26px; border:1px solid rgba(255,255,255,.11); border-radius:34px; position:relative; display:grid; place-items:center; color:white; background:rgba(255,255,255,.06); transform:rotate(-5deg); }
.final-orb > span svg { width:34px; height:34px; }
.final-orb > i { position:absolute; right:-8px; bottom:-7px; width:35px; height:35px; border-radius:50%; display:grid; place-items:center; color:white; background:var(--orange-primary); box-shadow:0 9px 24px rgba(217,78,18,.35); }
.final-orb > i svg { width:17px; height:17px; }
.landing-final-v3 .eyebrow { color:#ff9561; }
.landing-final-v3 h2 { margin-left:auto; margin-right:auto; max-width:350px; }
.landing-final-v3 > p { margin-top:14px; color:rgba(255,255,255,.59); font-size:13px; }
.landing-final-v3 .primary-button { margin-top:24px; }
.landing-final-v3 > small { display:block; margin-top:10px; color:rgba(255,255,255,.41); font-size:9px; }

.landing-footer { padding-top:38px; }
.landing-footer nav { margin-top:28px; }
.landing-sticky-cta { position:fixed; z-index:45; left:50%; bottom:0; width:min(100%,430px); padding:22px 13px calc(11px + var(--safe-bottom)); transform:translate(-50%,120%); opacity:0; pointer-events:none; background:linear-gradient(180deg,transparent,rgba(248,246,242,.94) 34%,#f8f6f2 58%); transition:transform 240ms ease,opacity 180ms ease; }
.landing-sticky-cta.visible { transform:translate(-50%,0); opacity:1; pointer-events:auto; }
.landing-sticky-cta button { width:100%; min-height:58px; padding:8px 12px 8px 16px; border:0; border-radius:18px; display:flex; align-items:center; justify-content:space-between; color:white; background:var(--orange-primary); box-shadow:0 12px 28px rgba(190,64,12,.28); text-align:left; cursor:pointer; }
.landing-sticky-cta small,.landing-sticky-cta b { display:block; }
.landing-sticky-cta small { color:rgba(255,255,255,.68); font-size:8px; text-transform:uppercase; letter-spacing:.09em; }
.landing-sticky-cta b { margin-top:2px; font-size:13px; }
.landing-sticky-cta svg { width:19px; height:19px; }

@media (max-width:370px) {
  .landing-hero-v3,.landing-formula,.analysis-chapter,.smart-proof-v3,.choice-chapter,.photoshoot-chapter,.gallery-chapter,.testimonial-chapter,.start-steps,.landing-pricing,.free-trial-v3,.landing-faq,.landing-final-v3 { padding-left:16px; padding-right:16px; }
  .landing-hero-v3 h1 { font-size:46px; }
  .landing-formula h2,.analysis-chapter h2,.smart-proof-v3 h2,.choice-chapter h2,.photoshoot-chapter h2,.gallery-chapter h2,.testimonial-chapter h2,.start-steps h2,.landing-pricing h2,.free-trial-v3 h2,.landing-faq h2,.landing-final-v3 h2 { font-size:33px; }
  .landing-result-tile { height:225px; }
  .landing-swipe-stage { height:410px; }
  .improvement-list { grid-template-columns:1fr; }
  .improvement-list li { min-height:66px; }
  .paid-plans,.gallery-ribbon,.testimonial-scroll,.photoshoot-story { margin-left:-16px; margin-right:-16px; padding-left:16px; }
}

@media (prefers-reduced-motion: reduce) {
  .analysis-product .analysis-scan { display:none; }
  .analysis-product .analysis-point,.analysis-product .analysis-result { opacity:1; }
  .before-after.is-auto-previewing,.before-after.is-auto-looping { transition:none !important; }
  .compare-loader i { animation:none; }
  .photoshoot-results article { opacity:1; transform:none; }
}

/* Premium polish: typography, material, motion and signature interaction details. */
body:has(.landing-v3) {
  min-width:0;
  --orange-primary:#d6400c;
  --orange-hover:#c93608;
  --orange-pressed:#b72f05;
  --orange-soft:#fff0e7;
  --orange-border:rgba(214,64,12,.22);
  --orange-focus:rgba(214,64,12,.28);
  --orange-tangerine:#f2763d;
  --orange-peach:#f9d8c7;
  --orange-mist:#fff7f2;
  --border:rgba(33,27,22,.105);
  font-family:"Onest","Segoe UI Variable Text","Segoe UI",sans-serif;
}

.landing-v3,.bottom-sheet,.cookie-consent { font-family:"Onest","Segoe UI Variable Text","Segoe UI",sans-serif; }
.landing-v3 { font-weight:450; }
.landing-v3 h1,.landing-v3 h2,.landing-v3 h3 { text-wrap:balance; }
.landing-v3 .eyebrow { font-size:10px; font-weight:750; letter-spacing:.145em; }
.landing-v3 .subtitle,.landing-v3 .hero-copy { font-weight:450; }
.landing-v3 .landing-formula h2,.landing-v3 .analysis-chapter h2,.landing-v3 .smart-proof-v3 h2,.landing-v3 .choice-chapter h2,.landing-v3 .photoshoot-chapter h2,.landing-v3 .gallery-chapter h2,.landing-v3 .testimonial-chapter h2,.landing-v3 .start-steps h2,.landing-v3 .landing-pricing h2,.landing-v3 .free-trial-v3 h2,.landing-v3 .landing-faq h2,.landing-v3 .landing-final-v3 h2 { font-weight:780; letter-spacing:-.052em; }
.landing-v3 .analysis-chapter h2,.landing-v3 .gallery-chapter h2 { font-size:40px; }
.landing-v3 .testimonial-chapter h2,.landing-v3 .landing-final-v3 h2 { font-size:38px; }

.landing-v3 .marketing-header { border-bottom-color:rgba(40,30,24,.055); background:rgba(250,248,244,.82); backdrop-filter:blur(24px) saturate(1.18); }
.landing-v3 .marketing-header.is-compact { background:rgba(250,248,244,.86); border-bottom-color:rgba(40,30,24,.075); box-shadow:0 12px 36px rgba(49,34,24,.075); }
.landing-v3 .brand { font-weight:780; letter-spacing:-.045em; }
.landing-v3 .brand-mark { position:relative; overflow:hidden; border-radius:10px 10px 10px 4px; background:linear-gradient(145deg,#f06b30 0%,#dc470e 68%,#c83b08 100%); box-shadow:0 7px 18px rgba(202,61,8,.22),inset 0 1px rgba(255,255,255,.34); }
.landing-v3 .brand-mark::after { content:""; position:absolute; inset:1px 2px auto; height:45%; border-radius:8px; background:linear-gradient(rgba(255,255,255,.19),transparent); pointer-events:none; }
.landing-v3 .header-try { border:1px solid rgba(255,255,255,.16); background:linear-gradient(135deg,#ee6428,#d8440e 74%); box-shadow:0 7px 18px rgba(190,60,9,.18),inset 0 1px rgba(255,255,255,.25); transition:width var(--motion-normal) var(--ease-out),padding var(--motion-normal) var(--ease-out),opacity var(--motion-fast) ease,transform var(--motion-fast) var(--ease-spring); }
.landing-v3 .header-try:active { transform:scale(.96) translateY(1px); }
.landing-v3 .icon-button.compact { border-color:rgba(44,34,27,.08); background:rgba(255,255,255,.72); box-shadow:0 6px 18px rgba(45,33,25,.06),inset 0 1px rgba(255,255,255,.78); }

.landing-hero-v3 { position:relative; overflow:hidden; background:radial-gradient(circle at 92% 2%,rgba(242,118,61,.14),transparent 31%),radial-gradient(circle at -8% 47%,rgba(249,216,199,.19),transparent 28%),#f9f7f3; }
.landing-hero-v3::before { content:""; position:absolute; z-index:0; top:-84px; right:-96px; width:230px; height:230px; border-radius:50%; background:radial-gradient(circle,rgba(242,118,61,.1),rgba(242,118,61,0) 67%); animation:hero-ambient var(--motion-story) var(--ease-out) both; pointer-events:none; }
.landing-hero-v3 > * { position:relative; z-index:1; }
.landing-hero-v3 h1 { margin-top:20px; font-size:clamp(47px,12.45vw,54px); line-height:.91; letter-spacing:-.067em; font-weight:820; }
.landing-hero-v3 h1 em { color:#dc480f; }
.hero-copy { max-width:348px; color:#5f5a54; font-size:15px; line-height:1.52; }
.hero-category,.landing-hero-v3 h1,.hero-copy,.hero-free,.hero-actions,.hero-start-note,.hero-product,.hero-trust { animation:hero-item-in var(--motion-story) var(--ease-out) both; }
.landing-hero-v3 h1 { animation-delay:35ms; }
.hero-copy { animation-delay:80ms; }
.hero-free { animation-delay:120ms; }
.hero-actions { animation-delay:150ms; }
.hero-start-note { animation-delay:180ms; }
.hero-product { animation-delay:230ms; }
.hero-trust { animation-delay:290ms; }
@keyframes hero-item-in { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
@keyframes hero-ambient { from { opacity:0; transform:translate(18px,-12px) scale(.86); } to { opacity:1; transform:none; } }
.free-signal { border:1px solid rgba(228,81,22,.09); color:#ce430e; background:rgba(255,240,231,.9); box-shadow:inset 0 1px rgba(255,255,255,.72); }
.free-signal span { background:linear-gradient(145deg,#f06c30,#d8440e); box-shadow:0 4px 10px rgba(201,63,12,.2); }

.landing-v3 .primary-button,.bottom-sheet .primary-button { min-height:58px; border:1px solid rgba(255,255,255,.18); border-radius:var(--radius-md); color:white; background:linear-gradient(135deg,#ef672b 0%,#e04c12 48%,#cb3d0b 100%); box-shadow:0 12px 28px rgba(190,61,10,.24),0 2px 5px rgba(122,37,6,.14),inset 0 1px rgba(255,255,255,.28); font-size:15px; font-weight:720; letter-spacing:-.018em; transition:transform var(--motion-fast) var(--ease-spring),box-shadow var(--motion-fast) ease,filter var(--motion-fast) ease; }
.landing-v3 .primary-button:hover,.bottom-sheet .primary-button:hover { filter:saturate(1.04) brightness(1.015); }
.landing-v3 .primary-button:active,.bottom-sheet .primary-button:active { transform:translateY(2px) scale(.982); box-shadow:0 5px 13px rgba(177,52,6,.2),inset 0 1px rgba(255,255,255,.16); }
.landing-v3 .primary-button > svg:last-child,.landing-v3 .primary-button .button-arrow { width:30px; height:30px; margin-left:auto; padding:6px; border-radius:50%; color:white; background:rgba(255,255,255,.13); box-shadow:inset 0 1px rgba(255,255,255,.12); transition:transform var(--motion-fast) var(--ease-spring),background var(--motion-fast) ease; }
.landing-v3 .primary-button .button-arrow { display:grid; place-items:center; padding:0; }
.landing-v3 .primary-button .button-arrow svg { width:17px; height:17px; }
.landing-v3 .primary-button:active > svg:last-child,.landing-v3 .primary-button:active .button-arrow { transform:translateX(3px); background:rgba(255,255,255,.18); }
.landing-v3 .secondary-button,.bottom-sheet .secondary-button,.secondary-cta,.light-cta { border:1px solid rgba(42,31,24,.1); border-radius:var(--radius-md); background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(249,245,239,.96)); box-shadow:0 7px 20px rgba(46,33,24,.065),inset 0 1px rgba(255,255,255,.8); transition:transform var(--motion-fast) var(--ease-spring),box-shadow var(--motion-fast) ease,border-color var(--motion-fast) ease; }
.secondary-cta { color:#d4470f; background:linear-gradient(180deg,#fff9f5,#fff1e8); border-color:rgba(228,81,22,.15); }
.light-cta { color:#211c18; }
.landing-v3 .secondary-button:active,.bottom-sheet .secondary-button:active,.secondary-cta:active,.light-cta:active { transform:translateY(1px) scale(.986); box-shadow:0 3px 10px rgba(46,33,24,.06); }
.landing-v3 .link-button { width:max-content; min-height:44px; margin:5px auto 3px; padding:0 5px; position:relative; text-decoration:none; font-size:12px; font-weight:650; }
.landing-v3 .link-button::after { content:""; position:absolute; left:5px; right:5px; bottom:8px; height:1px; background:linear-gradient(90deg,rgba(25,24,22,.5),rgba(25,24,22,.12)); transform:scaleX(.42); transform-origin:left; transition:transform var(--motion-normal) var(--ease-out); }
.landing-v3 .link-button:hover::after,.landing-v3 .link-button:focus-visible::after { transform:scaleX(1); }

.landing-v3 .before-after { border-radius:var(--radius-hero); background:#d8d0c6; box-shadow:0 24px 58px rgba(42,29,20,.15),0 2px 7px rgba(42,29,20,.08); }
.landing-v3 .before-after::after { width:2px; background:rgba(255,252,249,.92); box-shadow:0 0 0 1px rgba(43,25,16,.06),0 0 12px rgba(228,81,22,.12); transition:width var(--motion-fast) ease,box-shadow var(--motion-fast) ease; }
.landing-v3 .compare-handle { width:46px; height:46px; border:1px solid rgba(90,58,39,.12); color:var(--orange-primary); background:linear-gradient(145deg,#fff,#fff8f3); box-shadow:0 8px 20px rgba(37,25,18,.18),inset 0 1px rgba(255,255,255,.9); transition:transform var(--motion-fast) var(--ease-spring),box-shadow var(--motion-fast) ease; }
.landing-v3 .compare-handle svg { width:18px; color:var(--orange-primary); }
.landing-v3 .before-after.is-dragging .compare-handle { transform:translate(-50%,-50%) scale(1.07); box-shadow:0 11px 24px rgba(37,25,18,.21),0 0 0 5px rgba(228,81,22,.09); }
.landing-v3 .before-after.is-dragging::after { width:2px; box-shadow:0 0 14px rgba(228,81,22,.24); }
.landing-v3 .compare-label,.landing-v3 .compare-hint { border:1px solid rgba(255,255,255,.16); background:rgba(28,22,18,.38); box-shadow:inset 0 1px rgba(255,255,255,.08); backdrop-filter:blur(16px); }
.hero-result-bar { border-radius:var(--radius-md); background:linear-gradient(180deg,rgba(28,22,18,.48),rgba(22,17,14,.66)); box-shadow:0 10px 28px rgba(18,13,10,.18),inset 0 1px rgba(255,255,255,.1); }
.hero-result-bar i { background:#ff7a3c; box-shadow:0 0 0 4px rgba(255,122,60,.14),0 0 14px rgba(255,122,60,.38); }

.editor-relief,.personalization-proof,.free-plan,.paid-plan,.testimonial-card,.start-steps li,.credit-explainer { border-radius:var(--radius-lg); }
.editor-clutter,.assistant-calm,.improvement-list li,.choice-tabs,.pricing-model-tabs,.testimonial-photo,.free-plan .primary-button { border-radius:var(--radius-md); }
.landing-result-tile,.photoshoot-original img,.gallery-card,.photoshoot-results article { border-radius:var(--radius-lg); }
.analysis-product,.landing-swipe-card,.landing-swipe-peek { border-radius:var(--radius-hero); }
.editor-relief { border-color:rgba(42,31,24,.08); background:linear-gradient(145deg,#f8f5f0,#f0ebe4); box-shadow:inset 0 1px rgba(255,255,255,.8); }
.assistant-calm { background:radial-gradient(circle at 92% 4%,rgba(242,118,61,.13),transparent 34%),#211d1a; box-shadow:0 11px 25px rgba(37,27,20,.14),inset 0 1px rgba(255,255,255,.06); }
.relief-arrow { background:linear-gradient(145deg,#f3743b,#d8460e); box-shadow:0 9px 20px rgba(192,57,7,.25),inset 0 1px rgba(255,255,255,.25); }
.improvement-list li,.start-steps li { border-color:rgba(35,28,23,.085); box-shadow:0 6px 18px rgba(45,33,24,.035),inset 0 1px rgba(255,255,255,.8); }

.analysis-chapter { background:radial-gradient(circle at 92% 12%,rgba(228,81,22,.11),transparent 24%),#1b1815; }
.analysis-product { box-shadow:0 28px 68px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.06); }
.analysis-product > img { transition:opacity var(--motion-story) ease,filter var(--motion-story) ease; }
.analysis-product.is-visible > img { opacity:.69; filter:saturate(.88) contrast(1.02); }
.analysis-scan { background:linear-gradient(90deg,transparent,rgba(255,174,131,.84),transparent); box-shadow:0 0 18px rgba(242,118,61,.48); }
.analysis-point { border-color:rgba(255,255,255,.14); border-radius:var(--radius-pill); background:rgba(28,22,18,.46); box-shadow:0 8px 22px rgba(0,0,0,.12),inset 0 1px rgba(255,255,255,.06); font-weight:620; }
.analysis-point i { box-shadow:0 0 0 4px rgba(255,131,71,.1); }
.analysis-product.is-visible .p1 i { animation:analysis-success 420ms var(--ease-spring) .92s both; }
.analysis-product.is-visible .p2 i { animation:analysis-success 420ms var(--ease-spring) 1.31s both; }
.analysis-product.is-visible .p3 i { animation:analysis-success 420ms var(--ease-spring) 1.7s both; }
.analysis-product.is-visible .p4 i { animation:analysis-success 420ms var(--ease-spring) 2.02s both; }
@keyframes analysis-success { 0% { transform:scale(.7); background:#ff8347; } 65% { transform:scale(1.7); background:#5ac28c; } 100% { transform:none; background:#43a876; box-shadow:0 0 0 4px rgba(67,168,118,.13); } }
.analysis-result { border-radius:var(--radius-md); background:linear-gradient(180deg,rgba(38,30,25,.6),rgba(25,20,17,.78)); box-shadow:0 15px 34px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.08); }
.personalization-proof { background:linear-gradient(145deg,#29231f,#221d19); box-shadow:inset 0 1px rgba(255,255,255,.06); }
.personalization-proof li { border-radius:var(--radius-md); }
.personalization-proof img { border-radius:var(--radius-sm); }

.choice-tabs,.pricing-model-tabs { position:relative; isolation:isolate; overflow:hidden; background:rgba(209,200,190,.64); box-shadow:inset 0 1px 3px rgba(57,42,31,.08),0 1px rgba(255,255,255,.65); }
.choice-tabs::before,.pricing-model-tabs::before { content:""; position:absolute; z-index:-1; top:5px; bottom:5px; left:5px; width:calc(50% - 7.5px); border-radius:14px; background:linear-gradient(180deg,#fff,#faf7f2); box-shadow:0 8px 18px rgba(38,28,21,.09),inset 0 1px rgba(255,255,255,.9); transition:transform var(--motion-normal) var(--ease-spring); }
.landing-demo.show-swipe .choice-tabs::before,.landing-pricing:has([data-pricing-model="subscription"].active) .pricing-model-tabs::before { transform:translateX(calc(100% + 5px)); }
.choice-tabs button.active,.pricing-model-tabs button.active { background:transparent; box-shadow:none; }
.landing-catalog-view,.landing-swipe-view { overflow:hidden; transform-origin:50% 0; transition:max-height var(--motion-normal) var(--ease-out),opacity 220ms ease,transform var(--motion-normal) var(--ease-spring),margin var(--motion-normal) ease,visibility 0s linear var(--motion-normal); }
.landing-demo.show-catalog .landing-catalog-view { display:grid; max-height:510px; opacity:1; transform:none; visibility:visible; transition-delay:0s; }
.landing-demo.show-catalog .landing-swipe-view { display:block; max-height:0; margin-top:0; opacity:0; transform:translateY(8px) scale(.975); visibility:hidden; pointer-events:none; }
.landing-demo.show-swipe .landing-catalog-view { display:grid; max-height:0; margin-top:0; opacity:0; transform:translateY(-6px) scale(.975); visibility:hidden; pointer-events:none; }
.landing-demo.show-swipe .landing-swipe-view { display:block; max-height:525px; opacity:1; transform:none; visibility:visible; transition-delay:0s; }
.landing-result-tile { border-color:rgba(255,255,255,.38); box-shadow:0 10px 26px rgba(45,32,23,.08); transition:transform var(--motion-normal) var(--ease-spring),border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease; }
.landing-result-tile.active { border-color:#ed672b; transform:translateY(-3px) scale(1.008); box-shadow:0 14px 30px rgba(47,31,20,.13),0 0 0 1px rgba(228,81,22,.06); }
.landing-swipe-card,.landing-swipe-peek { box-shadow:0 22px 50px rgba(38,27,19,.16); }
.landing-swipe-peek { transition:transform var(--motion-fast) ease,opacity var(--motion-fast) ease; }
.landing-swipe-card.dragging { cursor:grabbing; }
.landing-swipe-actions button { border:1px solid rgba(42,31,24,.085); border-radius:var(--radius-md); box-shadow:0 7px 18px rgba(43,31,23,.06),inset 0 1px rgba(255,255,255,.8); transition:transform var(--motion-fast) var(--ease-spring),box-shadow var(--motion-fast) ease; }
.landing-swipe-actions button:active { transform:scale(.94); box-shadow:0 3px 8px rgba(43,31,23,.06); }
.landing-swipe-actions .demo-like { position:relative; border-color:rgba(255,255,255,.16); background:linear-gradient(145deg,#f06a30,#d9450e); box-shadow:0 10px 23px rgba(194,58,8,.22),inset 0 1px rgba(255,255,255,.24); }
.landing-swipe-actions .demo-like::after { content:"♥"; position:absolute; left:50%; top:50%; color:#e45116; font-size:34px; opacity:0; transform:translate(-50%,-50%) scale(.3); pointer-events:none; text-shadow:0 8px 18px rgba(101,30,5,.15); }
.landing-swipe-actions .demo-like.pulse::after { animation:heart-feedback 500ms var(--ease-spring) both; }
@keyframes heart-feedback { 0% { opacity:0; transform:translate(-50%,-50%) scale(.3); } 35% { opacity:1; transform:translate(-50%,-92%) scale(1.08); } 100% { opacity:0; transform:translate(-50%,-135%) scale(.82); } }

.photoshoot-chapter { background:radial-gradient(circle at 100% 28%,rgba(242,118,61,.1),transparent 26%),#201b17; }
.photoshoot-results article { clip-path:inset(0 0 18% 0 round var(--radius-lg)); }
.photoshoot-chapter.is-visible .photoshoot-results article { animation:photoshoot-mask-in var(--motion-story) var(--ease-out) forwards; }
@keyframes photoshoot-mask-in { from { opacity:0; transform:translateY(24px) scale(.975); clip-path:inset(0 0 18% 0 round var(--radius-lg)); } to { opacity:1; transform:none; clip-path:inset(0 0 0 0 round var(--radius-lg)); } }
.story-connector { background:radial-gradient(circle,rgba(242,118,61,.14),rgba(255,255,255,.035)); box-shadow:inset 0 1px rgba(255,255,255,.06); }
.gallery-chapter:not(.is-visible) .gallery-card img,.photoshoot-chapter:not(.is-visible) .photoshoot-results img,.analysis-chapter:not(.is-visible) .personalization-proof img { opacity:.72; filter:blur(7px); transform:scale(1.025); }
.gallery-chapter.is-visible .gallery-card img,.photoshoot-chapter.is-visible .photoshoot-results img,.analysis-chapter.is-visible .personalization-proof img { animation:image-sharpen var(--motion-story) var(--ease-out) both; }
@keyframes image-sharpen { from { opacity:.72; filter:blur(7px); transform:scale(1.025); } to { opacity:1; filter:blur(0); transform:none; } }

.testimonial-card { flex-basis:86%; opacity:.72; transform:scale(.965); transform-origin:center; border-color:rgba(42,31,24,.085); box-shadow:0 12px 30px rgba(42,30,21,.055),inset 0 1px rgba(255,255,255,.8); transition:opacity var(--motion-normal) ease,transform var(--motion-normal) var(--ease-spring),box-shadow var(--motion-normal) ease; }
.testimonial-card.is-current { opacity:1; transform:none; box-shadow:0 18px 42px rgba(42,30,21,.1),inset 0 1px rgba(255,255,255,.9); }
.testimonial-card blockquote { font-size:18px; line-height:1.3; font-weight:620; letter-spacing:-.027em; }
.mock-disclosure { border-style:solid; border-color:rgba(42,31,24,.08); border-radius:var(--radius-sm); background:rgba(255,255,255,.42); }

.free-plan { overflow:hidden; background:radial-gradient(circle at 95% 2%,rgba(242,118,61,.18),transparent 30%),linear-gradient(145deg,#25201c,#1d1916); box-shadow:0 18px 43px rgba(47,31,22,.13),inset 0 1px rgba(255,255,255,.06); }
.free-plan::before { content:""; position:absolute; inset:0 auto auto 19px; width:72px; height:2px; background:linear-gradient(90deg,#f47a42,transparent); }
.pricing-model-tabs button { position:relative; z-index:1; font-weight:680; }
.paid-plan { overflow:hidden; border-color:rgba(42,31,24,.085); box-shadow:0 8px 25px rgba(42,30,21,.045),inset 0 1px rgba(255,255,255,.85); }
.paid-plan.featured { border-color:rgba(228,81,22,.24); box-shadow:0 16px 38px rgba(123,53,20,.1),inset 0 1px rgba(255,255,255,.9); }
.paid-plan.featured::before { content:""; position:absolute; inset:0 16px auto; height:3px; border-radius:0 0 999px 999px; background:linear-gradient(90deg,#f47a42,#d8440e); }
.plan-label { top:15px; right:15px; border:1px solid rgba(228,81,22,.1); color:#cc400d; background:#fff0e7; font-size:8px; font-weight:720; }
.paid-plan > strong { color:#1e1b18; font-size:38px; font-weight:780; }
.paid-plan > strong span { color:#746d66; font-weight:600; }
.paid-plan button { border-radius:var(--radius-sm); background:linear-gradient(180deg,#fbf9f6,#f3eee8); box-shadow:inset 0 1px rgba(255,255,255,.85); transition:transform var(--motion-fast) var(--ease-spring),border-color var(--motion-fast) ease; }
.paid-plan button:active { transform:scale(.975); border-color:rgba(228,81,22,.2); }

.faq-list { display:grid; gap:7px; border-top:0; }
.faq-list details { border:1px solid rgba(42,31,24,.08); border-radius:var(--radius-md); overflow:hidden; background:rgba(255,255,255,.54); box-shadow:inset 0 1px rgba(255,255,255,.7); transition:background var(--motion-normal) ease,border-color var(--motion-normal) ease,box-shadow var(--motion-normal) ease; }
.faq-list details[open] { border-color:rgba(228,81,22,.13); background:#fff; box-shadow:0 10px 26px rgba(46,32,23,.055),inset 0 1px rgba(255,255,255,.9); }
.faq-list summary { min-height:74px; padding:0 13px; grid-template-columns:26px 1fr 34px; }
.faq-list summary i { width:32px; height:32px; border:1px solid rgba(42,31,24,.08); border-radius:50%; background:rgba(249,246,241,.8); transition:transform var(--motion-normal) var(--ease-spring),background var(--motion-normal) ease,color var(--motion-normal) ease; }
.faq-list details[open] summary i { color:white; background:linear-gradient(145deg,#f06a30,#d9450e); transform:rotate(45deg); }
.faq-list details > p { padding:0 48px 20px 39px; }
.faq-list details[open] > p { animation:faq-copy-in var(--motion-normal) var(--ease-out) both; }
@keyframes faq-copy-in { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:none; } }

.auth-input,.idea-input { border-color:rgba(42,31,24,.12); border-radius:var(--radius-sm); background:#fbf9f6; box-shadow:inset 0 1px 2px rgba(42,31,24,.025); transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,background var(--motion-fast) ease; }
.auth-input:focus,.idea-input:focus { border-color:rgba(228,81,22,.5); outline:0; background:white; box-shadow:0 0 0 4px rgba(228,81,22,.09),inset 0 1px rgba(255,255,255,.9); }
.auth-input[aria-invalid="true"] { border-color:rgba(184,59,53,.62); box-shadow:0 0 0 4px rgba(184,59,53,.08); }
.field-error { min-height:16px; margin:-4px 2px 3px; display:block; color:var(--error); font-size:9px; line-height:1.35; }
.social-auth button { border-color:rgba(42,31,24,.1); border-radius:var(--radius-sm); background:linear-gradient(180deg,#fff,#faf7f3); box-shadow:0 5px 16px rgba(45,32,23,.045),inset 0 1px rgba(255,255,255,.9); transition:transform var(--motion-fast) var(--ease-spring),box-shadow var(--motion-fast) ease; }
.social-auth button:active { transform:scale(.982); box-shadow:0 2px 8px rgba(45,32,23,.04); }
.sheet-backdrop { background:rgba(25,19,15,.42); backdrop-filter:blur(7px) saturate(.82); animation-duration:var(--motion-normal); }
.bottom-sheet { padding:10px 20px calc(22px + var(--safe-bottom)); border:1px solid rgba(42,31,24,.075); border-bottom:0; border-radius:var(--radius-hero) var(--radius-hero) 0 0; background:linear-gradient(180deg,#fff,#fcfaf7); box-shadow:0 -28px 70px rgba(35,24,17,.18),inset 0 1px rgba(255,255,255,.9); animation:sheet-up var(--motion-normal) var(--ease-spring) both; }
.bottom-sheet.is-closing { animation:sheet-down 220ms var(--ease-out) both; }
.sheet-backdrop.is-closing { animation:fade-out 220ms ease both; }
@keyframes sheet-down { to { transform:translate(-50%,102%); } }
@keyframes fade-out { to { opacity:0; } }
.sheet-handle { width:42px; height:5px; margin-bottom:24px; background:linear-gradient(90deg,#ded8d1,#cfc6bc,#ded8d1); box-shadow:inset 0 1px rgba(255,255,255,.75); }
.bottom-sheet.is-swipe-dismissible .sheet-handle {
  position:relative;
  touch-action:none;
  cursor:grab;
}
.bottom-sheet.is-swipe-dismissible .sheet-handle::before {
  content:"";
  position:absolute;
  inset:-14px -42px -16px;
}
.bottom-sheet.is-dragging {
  animation:none !important;
  user-select:none;
  will-change:transform;
}
.bottom-sheet.is-dragging .sheet-handle { cursor:grabbing; }
.sheet-backdrop.is-dragging {
  animation:none !important;
  will-change:opacity;
}
.bottom-sheet h2 { font-size:29px; font-weight:780; letter-spacing:-.045em; }
.bottom-sheet p { font-weight:450; }

.landing-choice-sheet {
  max-height:none;
  padding:10px 18px calc(18px + var(--safe-bottom));
  overflow:visible;
}
.landing-choice-sheet .sheet-handle { margin-bottom:15px; }
.landing-choice-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.landing-choice-head .eyebrow { margin:0 0 7px; }
.landing-choice-head h2 { margin:0; font-size:clamp(25px,7.1vw,30px); line-height:1.04; }
.landing-choice-close {
  flex:0 0 42px;
  width:42px;
  height:42px;
  border:1px solid rgba(42,31,24,.09);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#3a312b;
  background:rgba(248,245,240,.88);
  box-shadow:inset 0 1px rgba(255,255,255,.85);
}
.landing-choice-close svg { width:18px; height:18px; }
.landing-choice-actions { margin-top:18px; display:grid; gap:10px; }
.landing-choice-actions > button {
  width:100%;
  min-height:88px;
  padding:13px 12px;
  border:1px solid rgba(42,31,24,.085);
  border-radius:19px;
  display:grid;
  grid-template-columns:50px minmax(0,1fr) 28px;
  align-items:center;
  gap:12px;
  color:var(--text-primary);
  text-align:left;
  background:linear-gradient(180deg,#fff,#fcf9f5);
  box-shadow:0 9px 24px rgba(46,33,24,.065),inset 0 1px rgba(255,255,255,.9);
  transition:transform 190ms var(--ease-spring),border-color 190ms ease,box-shadow 190ms ease;
}
.landing-choice-actions > button:active { transform:scale(.985); border-color:rgba(228,81,22,.22); box-shadow:0 4px 12px rgba(46,33,24,.055); }
.landing-choice-actions > button:focus-visible { outline:3px solid rgba(228,81,22,.2); outline-offset:2px; }
.landing-choice-icon {
  width:50px;
  height:50px;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#e54a12;
  background:linear-gradient(145deg,#fff4ed,#ffe8dd);
  box-shadow:inset 0 1px rgba(255,255,255,.85);
}
.landing-choice-icon svg { width:25px; height:25px; stroke-width:1.8; }
.landing-choice-actions strong { display:block; font-size:16px; font-weight:760; letter-spacing:-.02em; }
.landing-choice-actions small { margin-top:4px; display:block; color:var(--text-secondary); font-size:12px; line-height:1.35; }
.landing-choice-actions > button > i { width:28px; height:28px; border-radius:50%; display:grid; place-items:center; color:#c84a1a; background:#fff2eb; }
.landing-choice-actions > button > i svg { width:16px; height:16px; }

@media (max-width:359px) {
  .landing-choice-sheet { padding-right:14px; padding-left:14px; }
  .landing-choice-actions > button { min-height:82px; grid-template-columns:46px minmax(0,1fr) 24px; gap:10px; }
  .landing-choice-icon { width:46px; height:46px; border-radius:14px; }
  .landing-choice-actions strong { font-size:15px; }
  .landing-choice-actions small { font-size:11px; }
}

.cookie-consent { border-color:rgba(255,255,255,.09); border-radius:var(--radius-lg); background:radial-gradient(circle at 95% 0,rgba(242,118,61,.13),transparent 30%),rgba(31,26,22,.96); box-shadow:0 24px 58px rgba(29,20,14,.26),inset 0 1px rgba(255,255,255,.06); }
.cookie-consent button { border:1px solid rgba(255,255,255,.07); border-radius:var(--radius-sm); background:rgba(255,255,255,.07); transition:transform var(--motion-fast) var(--ease-spring),background var(--motion-fast) ease; }
.cookie-consent button:first-child { border-color:rgba(255,255,255,.12); background:linear-gradient(145deg,#f06a30,#d9450e); box-shadow:0 7px 18px rgba(169,49,7,.22),inset 0 1px rgba(255,255,255,.2); }
.cookie-consent button:active { transform:scale(.975); }

.landing-final-v3 { position:relative; overflow:hidden; background:radial-gradient(circle at 50% 8%,rgba(242,118,61,.38),transparent 26%),radial-gradient(circle at 100% 100%,rgba(201,63,12,.13),transparent 30%),#191511; }
.landing-final-v3::before { content:""; position:absolute; left:50%; top:17px; width:270px; height:270px; border:1px solid rgba(255,255,255,.035); border-radius:48%; transform:translateX(-50%) rotate(18deg); pointer-events:none; }
.landing-final-v3 > * { position:relative; z-index:1; }
.final-orb { border-radius:var(--radius-hero); background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.035)); box-shadow:0 20px 45px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.1); }
.final-orb > i { background:linear-gradient(145deg,#f3753b,#d8440e); box-shadow:0 10px 25px rgba(201,60,8,.34),inset 0 1px rgba(255,255,255,.24); }
.landing-footer { position:relative; background:linear-gradient(180deg,#17130f,#13110e); }
.landing-footer::before { content:""; position:absolute; top:0; left:20px; right:20px; height:1px; background:linear-gradient(90deg,transparent,rgba(242,118,61,.45),transparent); }
.mobile-footer summary span { transition:transform var(--motion-normal) var(--ease-spring),color var(--motion-normal) ease; }
.mobile-footer details[open] summary span { color:#ff9560; }

.landing-sticky-cta { padding:18px 13px calc(10px + var(--safe-bottom)); background:linear-gradient(180deg,transparent,rgba(249,247,243,.74) 25%,rgba(249,247,243,.94) 54%); backdrop-filter:blur(9px); transition:transform var(--motion-normal) var(--ease-spring),opacity var(--motion-fast) ease; }
.landing-sticky-cta button { min-height:56px; border:1px solid rgba(255,255,255,.18); border-radius:var(--radius-pill); background:linear-gradient(135deg,#ef672b,#df4a10 50%,#cb3d0b); box-shadow:0 12px 28px rgba(179,53,7,.25),0 2px 6px rgba(100,31,6,.12),inset 0 1px rgba(255,255,255,.27); transition:transform var(--motion-fast) var(--ease-spring),box-shadow var(--motion-fast) ease; }
.landing-sticky-cta button:active { transform:translateY(2px) scale(.985); box-shadow:0 5px 13px rgba(179,53,7,.2); }
.landing-sticky-cta svg { width:30px; height:30px; padding:6px; border-radius:50%; background:rgba(255,255,255,.13); }

@media (max-width:370px) {
  .landing-hero-v3 h1 { font-size:47px; letter-spacing:-.064em; }
  .landing-v3 .analysis-chapter h2,.landing-v3 .gallery-chapter h2 { font-size:36px; }
  .landing-v3 .testimonial-chapter h2,.landing-v3 .landing-final-v3 h2 { font-size:35px; }
  .landing-v3 .primary-button { font-size:14px; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-hero-v3::before,.hero-category,.landing-hero-v3 h1,.hero-copy,.hero-free,.hero-actions,.hero-start-note,.hero-product,.hero-trust,.gallery-card img,.photoshoot-results img,.personalization-proof img,.demo-like::after { animation:none !important; opacity:1 !important; transform:none !important; filter:none !important; }
  .landing-catalog-view,.landing-swipe-view { transition:none !important; }
  .testimonial-card { transition:none !important; }
  .landing-demo.show-swipe:not(.has-interacted) .landing-swipe-card { animation:none !important; }
}

/* Pricing v4 — compact one-time packages */
.landing-v3 .landing-pricing-v4 {
  --pricing-accent:#e94710;
  max-width:1120px;
  overflow:visible;
  background:#f8f4ef;
}
.landing-v3 .landing-pricing-v4 > h2 {
  max-width:680px;
  margin-top:12px;
  font-size:clamp(27px,8.2vw,40px);
  line-height:1.01;
  letter-spacing:-.052em;
}
.landing-v3 .landing-pricing-v4 > .subtitle { max-width:610px; font-size:15px; line-height:1.5; }
.landing-v3 .pricing-free-start {
  margin-top:22px;
  padding:16px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 84px;
  align-items:center;
  gap:14px;
  color:#fff;
  background:linear-gradient(145deg,#241e1a 0%,#171310 100%);
  box-shadow:0 15px 34px rgba(43,30,21,.15),inset 0 1px rgba(255,255,255,.055);
}
.landing-v3 .pricing-free-copy { min-width:0; }
.landing-v3 .pricing-free-copy > small {
  display:block;
  color:#ff9d70;
  font-size:9px;
  font-weight:780;
  line-height:1;
  letter-spacing:.11em;
}
.landing-v3 .pricing-free-value { margin-top:9px; display:flex; align-items:baseline; gap:10px; }
.landing-v3 .pricing-free-value strong { font-size:21px; line-height:1; letter-spacing:-.035em; }
.landing-v3 .pricing-free-value b { color:#ff7b45; font-size:20px; line-height:1; letter-spacing:-.035em; }
.landing-v3 .pricing-free-copy p { max-width:320px; margin:9px 0 0; color:rgba(255,255,255,.66); font-size:11px; line-height:1.42; }
.landing-v3 .pricing-free-stack { width:78px; height:82px; position:relative; display:block; }
.landing-v3 .pricing-free-stack img {
  position:absolute;
  top:8px;
  left:18px;
  width:48px;
  height:64px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:12px;
  object-fit:cover;
  box-shadow:0 8px 18px rgba(0,0,0,.28);
}
.landing-v3 .pricing-free-stack img:nth-child(1) { transform:translateX(-14px) rotate(-8deg); opacity:.76; }
.landing-v3 .pricing-free-stack img:nth-child(2) { transform:translateX(8px) rotate(7deg); opacity:.84; }
.landing-v3 .pricing-free-stack img:nth-child(3) { transform:translateY(-2px); }
.landing-v3 .pricing-free-cta {
  grid-column:1/-1;
  min-height:48px;
  padding:0 46px 0 18px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  background:#f05219;
  box-shadow:0 8px 18px rgba(191,54,9,.2),inset 0 1px rgba(255,255,255,.17);
  font-size:14px;
  font-weight:700;
}
.landing-v3 .pricing-free-cta .cta-trailing { right:12px; width:25px; height:25px; }
.landing-v3 .pricing-credit-line {
  margin-top:13px;
  padding:11px 12px;
  border:1px solid rgba(48,38,30,.08);
  border-radius:15px;
  display:flex;
  align-items:center;
  gap:10px;
  background:rgba(255,255,255,.58);
}
.landing-v3 .pricing-credit-line > span {
  flex:0 0 34px;
  width:34px;
  height:34px;
  border-radius:11px;
  display:grid;
  place-items:center;
  color:var(--pricing-accent);
  background:#fff0e8;
}
.landing-v3 .pricing-credit-line svg { width:17px; height:17px; }
.landing-v3 .pricing-credit-line b,.landing-v3 .pricing-credit-line small { display:block; }
.landing-v3 .pricing-credit-line b { color:#2c2723; font-size:12px; line-height:1.25; }
.landing-v3 .pricing-credit-line small { margin-top:3px; color:#817871; font-size:9px; line-height:1.3; }
.landing-v3 .pricing-package-head { margin-top:30px; }
.landing-v3 .pricing-package-head h3 { color:#1e1a17; font-size:22px; line-height:1.08; letter-spacing:-.035em; }
.landing-v3 .pricing-package-head p { max-width:580px; margin:7px 0 0; color:#766e68; font-size:12px; line-height:1.45; }
.landing-v3 .pricing-group-tabs {
  width:100%;
  height:48px;
  margin-top:15px;
  padding:4px;
  border:1px solid rgba(48,38,30,.09);
  border-radius:16px;
  position:relative;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  background:#eae3dc;
}
.landing-v3 .pricing-group-tabs::before {
  content:"";
  position:absolute;
  z-index:0;
  top:4px;
  bottom:4px;
  left:4px;
  width:calc(50% - 4px);
  border-radius:12px;
  background:#fff;
  box-shadow:0 6px 16px rgba(54,38,27,.09),inset 0 1px rgba(255,255,255,.9);
  transition:transform 220ms cubic-bezier(.22,.8,.24,1);
}
.landing-v3 [data-pricing-group="volume"] .pricing-group-tabs::before { transform:translateX(100%); }
.landing-v3 .pricing-group-tabs button {
  min-width:0;
  padding:0 9px;
  border:0;
  border-radius:12px;
  position:relative;
  z-index:1;
  color:#766e67;
  background:transparent;
  font:inherit;
  font-size:11px;
  font-weight:720;
  cursor:pointer;
  transition:color 200ms ease;
}
.landing-v3 .pricing-group-tabs button[aria-selected="true"] { color:#28221e; }
.landing-v3 .pricing-group-tabs button:focus-visible,
.landing-v3 .pricing-package-card:focus-visible,
.landing-v3 .pricing-package-dots button:focus-visible,
.landing-v3 .pricing-carousel-controls > button:focus-visible,
.landing-v3 .pricing-upsell button:focus-visible,
.landing-v3 .pricing-purchase-cta:focus-visible,
.landing-v3 .pricing-free-cta:focus-visible { outline:3px solid rgba(233,71,16,.27); outline-offset:3px; }
.landing-v3 .pricing-packages {
  width:calc(100% + 40px);
  margin:16px -20px 0;
  padding:0 20px 7px;
  display:flex;
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:20px;
  overscroll-behavior-x:contain;
  touch-action:pan-y pinch-zoom;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
}
.landing-v3 .pricing-packages.is-dragging,
.landing-v3 .pricing-packages.is-settling { scroll-snap-type:none; }
.landing-v3 .pricing-packages.is-dragging { cursor:grabbing; }
.landing-v3 .pricing-packages::-webkit-scrollbar { display:none; }
.landing-v3 .pricing-package-card {
  flex:0 0 86%;
  height:368px;
  min-width:0;
  padding:24px;
  border:1px solid rgba(48,38,30,.1);
  border-radius:22px;
  position:relative;
  display:flex;
  flex-direction:column;
  scroll-snap-align:center;
  scroll-snap-stop:always;
  color:#28231f;
  background:#fff;
  box-shadow:0 10px 27px rgba(58,39,27,.075);
  cursor:pointer;
  opacity:.87;
  transform:scale(.97);
  transition:opacity 280ms ease,border-color 300ms ease,box-shadow 320ms ease,transform 380ms cubic-bezier(.16,1,.3,1),background-color 300ms ease;
  animation:pricing-card-in 380ms both cubic-bezier(.22,.8,.24,1);
}
.landing-v3 .pricing-package-card[hidden] { display:none; }
.landing-v3 .pricing-package-card:nth-child(2) { animation-delay:45ms; }
.landing-v3 .pricing-package-card:nth-child(3) { animation-delay:90ms; }
.landing-v3 .pricing-package-card:nth-child(4) { animation-delay:135ms; }
.landing-v3 .pricing-package-card:nth-child(5) { animation-delay:180ms; }
.landing-v3 .pricing-package-card.is-recommended { background:#fff8f2; }
.landing-v3 .pricing-package-card.is-best-value { background:linear-gradient(145deg,#fff 0%,#fff7ef 100%); }
.landing-v3 .pricing-package-card.is-selected {
  border-color:rgba(233,71,16,.78);
  box-shadow:0 0 0 1px rgba(233,71,16,.2),0 13px 30px rgba(209,63,13,.12);
  opacity:1;
  transform:scale(1);
}
.landing-v3 .pricing-package-card.is-arriving { animation:pricing-card-arrive 440ms cubic-bezier(.16,1,.3,1) both; }
.landing-v3 .pricing-packages.is-dragging .pricing-package-card { transition:none; }
@keyframes pricing-card-arrive {
  0% { opacity:.76; transform:translate3d(0,8px,0) scale(.965); }
  68% { opacity:1; transform:translate3d(0,-1px,0) scale(1.003); }
  100% { opacity:1; transform:translate3d(0,0,0) scale(1); }
}
.landing-v3 .pricing-package-top { min-height:32px; display:flex; align-items:center; justify-content:space-between; gap:10px; }
.landing-v3 .pricing-package-icon {
  width:32px;
  height:32px;
  border-radius:11px;
  display:grid;
  place-items:center;
  color:var(--pricing-accent);
  background:#fff0e8;
}
.landing-v3 .pricing-package-icon svg { width:17px; height:17px; }
.landing-v3 .pricing-package-badge {
  padding:6px 9px;
  border-radius:999px;
  color:#d9410d;
  background:#ffeadf;
  font-size:8px;
  font-weight:760;
  line-height:1;
  letter-spacing:.025em;
}
.landing-v3 .pricing-package-card.is-recommended .pricing-package-badge { position:relative; overflow:hidden; }
.landing-v3 .pricing-package-card.is-recommended .pricing-package-badge::after { content:""; position:absolute; inset:-8px auto -8px -26px; width:16px; transform:skewX(-18deg); background:rgba(255,255,255,.7); animation:pricing-badge-glint 700ms 520ms both ease-out; }
.landing-v3 .pricing-package-badge.is-empty { visibility:hidden; }
.landing-v3 .pricing-package-card h3 { margin-top:13px; font-size:15px; line-height:1.1; letter-spacing:-.02em; }
.landing-v3 .pricing-package-credits { margin-top:4px; font-size:25px; line-height:1.04; letter-spacing:-.045em; }
.landing-v3 .pricing-package-price { margin-top:12px; display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.landing-v3 .pricing-package-price b { font-size:27px; line-height:1; letter-spacing:-.045em; }
.landing-v3 .pricing-package-price span { color:#756c65; font-size:10px; font-weight:640; white-space:nowrap; }
.landing-v3 .pricing-package-card > p { margin:10px 0 0; min-height:31px; color:#746c65; font-size:11px; line-height:1.4; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.landing-v3 .pricing-package-benefits { margin:12px 0 0; padding:0; display:grid; gap:7px; list-style:none; }
.landing-v3 .pricing-package-benefits li { display:grid; grid-template-columns:15px minmax(0,1fr); gap:7px; align-items:start; color:#514a44; font-size:10px; line-height:1.28; }
.landing-v3 .pricing-package-benefits li > span { width:15px; height:15px; border-radius:50%; display:grid; place-items:center; color:#d84612; background:#ffebe1; }
.landing-v3 .pricing-package-benefits svg { width:10px; height:10px; }
.landing-v3 .pricing-package-saving {
  width:max-content;
  margin-top:auto;
  padding:6px 8px;
  border-radius:9px;
  color:#ba3a0e;
  background:#ffeadf;
  font-size:9px;
  font-weight:720;
}
.landing-v3 .pricing-carousel-controls { margin-top:9px; display:grid; grid-template-columns:44px minmax(42px,1fr) auto 44px; align-items:center; gap:9px; }
.landing-v3 .pricing-carousel-controls > button {
  width:44px;
  height:44px;
  padding:0;
  border:1px solid rgba(50,39,31,.1);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#e44912;
  background:#fff;
  box-shadow:0 7px 18px rgba(58,39,27,.08);
  cursor:pointer;
  transition:opacity 180ms ease,transform 180ms ease,box-shadow 180ms ease;
}
.landing-v3 .pricing-carousel-controls > button svg { width:17px; height:17px; }
.landing-v3 .pricing-carousel-controls > button:disabled { opacity:.34; cursor:default; box-shadow:none; }
.landing-v3 .pricing-carousel-controls > span { color:#69615b; font-size:10px; font-weight:690; white-space:nowrap; }
.landing-v3 .pricing-package-dots { min-height:18px; display:flex; align-items:center; justify-content:center; gap:6px; }
.landing-v3 .pricing-package-dots button {
  width:6px;
  height:6px;
  padding:0;
  border:0;
  border-radius:99px;
  background:#c9bfb7;
  cursor:pointer;
  transition:width 180ms ease,background-color 180ms ease;
}
.landing-v3 .pricing-package-dots button[aria-current="true"] { width:18px; background:var(--pricing-accent); }
.landing-v3 .pricing-upsell { min-height:29px; margin-top:7px; display:flex; align-items:center; justify-content:center; text-align:center; }
.landing-v3 .pricing-upsell button,.landing-v3 .pricing-upsell span { color:#9e3a16; font:inherit; font-size:10px; font-weight:680; line-height:1.3; }
.landing-v3 .pricing-upsell button { padding:4px 7px; border:0; border-bottom:1px solid rgba(225,72,18,.25); background:transparent; cursor:pointer; }
.landing-v3 .pricing-purchase { margin-top:5px; }
.landing-v3 .pricing-purchase-cta {
  min-height:58px;
  padding:0 48px 0 18px;
  border:1px solid rgba(181,43,5,.17);
  border-radius:19px;
  background:linear-gradient(118deg,#f04a12 0%,#dc3709 100%);
  box-shadow:0 9px 20px rgba(205,52,9,.2),inset 0 1px rgba(255,255,255,.2);
}
.landing-v3 .pricing-purchase-cta .cta-label { font-size:clamp(13px,4vw,16px); font-weight:700; white-space:nowrap; }
.landing-v3 .pricing-purchase-cta.is-copy-changing .cta-label { animation:pricing-cta-copy 210ms ease both; }
.landing-v3 .pricing-purchase-cta .cta-trailing { right:13px; width:28px; height:28px; border:1px solid rgba(255,255,255,.2); border-radius:10px; background:rgba(255,255,255,.11); }
.landing-v3 .pricing-purchase > small { display:block; margin-top:8px; color:#817870; text-align:center; font-size:9px; line-height:1.3; }
@media (hover:hover) and (pointer:fine) {
  .landing-v3 .pricing-package-card:hover { transform:translateY(-2px); box-shadow:0 15px 34px rgba(58,39,27,.11); }
  .landing-v3 .pricing-purchase-cta:hover,.landing-v3 .pricing-free-cta:hover { transform:translateY(-2px); filter:saturate(1.03); }
}
.landing-v3 .pricing-package-card:active { transform:scale(.99); }
.landing-v3 .pricing-purchase-cta:active,.landing-v3 .pricing-free-cta:active { transform:translateY(1px) scale(.985); }
@keyframes pricing-card-in { from { opacity:0; transform:translateY(11px) scale(.97); } }
@keyframes pricing-badge-glint { 0% { transform:translateX(0) skewX(-18deg); } 100% { transform:translateX(150px) skewX(-18deg); } }
@keyframes pricing-cta-copy { 0% { opacity:.35; transform:translateY(3px); } 100% { opacity:1; transform:translateY(0); } }

@media (min-width:768px) {
  main.landing-v3 { overflow-x:visible; }
  .landing-v3 .pricing-package-head { margin-top:36px; }
  .landing-v3 .pricing-packages {
    width:min(1050px,calc(100vw - 48px));
    margin:16px 0 0 50%;
    padding:0;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    overflow:visible;
    transform:translateX(-50%);
  }
  .landing-v3 .pricing-package-card { width:auto; height:368px; opacity:1; transform:none; }
  .landing-v3 .pricing-carousel-controls { display:none; }
  .landing-v3 .pricing-purchase { max-width:620px; margin-top:18px; }
  .landing-v3 .pricing-upsell { max-width:620px; justify-content:flex-start; text-align:left; }
}

@media (max-width:360px) {
  .landing-v3 .landing-pricing-v4 > h2 { font-size:27px; }
  .landing-v3 .pricing-free-start { grid-template-columns:minmax(0,1fr) 72px; padding:14px; }
  .landing-v3 .pricing-free-stack { width:68px; transform:scale(.9); transform-origin:center; }
  .landing-v3 .pricing-package-card { flex-basis:86%; height:368px; padding:20px; }
  .landing-v3 .pricing-package-price b { font-size:25px; }
  .landing-v3 .pricing-carousel-controls { gap:7px; }
  .landing-v3 .pricing-purchase-cta .cta-label { font-size:13px; letter-spacing:-.02em; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-packages { scroll-behavior:auto; }
  .landing-v3 .pricing-group-tabs::before,.landing-v3 .pricing-package-card,.landing-v3 .pricing-package-badge::after,.landing-v3 .pricing-package-dots button,.landing-v3 .pricing-carousel-controls > button,.landing-v3 .pricing-purchase-cta,.landing-v3 .pricing-purchase-cta .cta-label,.landing-v3 .pricing-free-cta { animation:none !important; transition:none !important; transform:none !important; }
}

/* Conversion polish: swipeable demo stories and premium mobile pricing. */
.sr-only { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }

.testimonial-chapter {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 96% 7%,rgba(242,118,61,.16),transparent 25%),
    radial-gradient(circle at -12% 63%,rgba(249,216,199,.46),transparent 26%),
    #f3ede6;
}
.testimonial-chapter > .subtitle { margin-top:14px; max-width:340px; }
.testimonial-chapter > .mock-disclosure { margin-top:17px; border-style:solid; background:rgba(255,255,255,.58); }
.mock-disclosure b { color:#4d4640; font-weight:720; }
.testimonial-shell { margin-top:22px; }
.testimonial-scroll {
  margin-top:0;
  padding-bottom:9px;
  scroll-padding:20px;
  scroll-snap-type:x mandatory;
  overscroll-behavior-x:contain;
  touch-action:pan-x pan-y;
}
.testimonial-scroll:focus-visible { outline:3px solid rgba(228,81,22,.18); outline-offset:4px; }
.testimonial-card {
  flex:0 0 87%;
  min-height:495px;
  padding:11px 11px 16px;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  cursor:grab;
  background:linear-gradient(180deg,#fff,#fffcf9);
}
.testimonial-card:active { cursor:grabbing; }
.testimonial-card.is-current { transform:translateY(-2px) scale(1); }
.testimonial-compare {
  height:224px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3px;
  position:relative;
  overflow:hidden;
  border-radius:var(--radius-lg);
  background:#d7cec5;
}
.testimonial-compare figure { min-width:0; margin:0; position:relative; overflow:hidden; }
.testimonial-compare img { width:100%; height:100%; object-fit:cover; }
.testimonial-compare figure:first-child img { filter:saturate(.72) contrast(.9) brightness(.84); }
.testimonial-compare figure::after { content:""; position:absolute; inset:54% 0 0; background:linear-gradient(transparent,rgba(17,13,10,.54)); }
.testimonial-compare figcaption {
  position:absolute;
  z-index:2;
  left:9px;
  bottom:9px;
  padding:5px 7px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  color:white;
  background:rgba(24,18,14,.36);
  backdrop-filter:blur(10px);
  font-size:8px;
  font-weight:720;
}
.story-mock-badge {
  position:absolute;
  z-index:3;
  top:9px;
  left:50%;
  transform:translateX(-50%);
  padding:5px 8px;
  border:1px solid rgba(255,255,255,.23);
  border-radius:999px;
  color:white;
  background:rgba(28,21,17,.42);
  backdrop-filter:blur(12px);
  font-size:7px;
  font-weight:800;
  letter-spacing:.12em;
}
.testimonial-usecase {
  width:max-content;
  margin:15px 3px 0;
  padding:6px 9px;
  display:block;
  border-radius:999px;
  color:#cb410d;
  background:#fff0e7;
  font-size:8px;
  font-weight:780;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.testimonial-card blockquote { min-height:94px; margin-top:12px; font-size:17px; line-height:1.34; }
.testimonial-author { margin:15px 3px 0; padding-top:13px; border-top:1px solid rgba(38,29,23,.08); display:flex; align-items:center; gap:10px; }
.testimonial-author > img { width:38px; height:38px; border-radius:13px; object-fit:cover; filter:saturate(.82); }
.testimonial-author b,.testimonial-author small { display:block; }
.testimonial-author b { font-size:10px; font-weight:700; }
.testimonial-author small { margin-top:3px; color:#938b84; font-size:8px; }
.testimonial-navigation { min-height:48px; margin-top:10px; display:grid; grid-template-columns:46px 1fr auto 46px; align-items:center; gap:8px; }
.testimonial-navigation > button {
  width:46px;
  height:46px;
  border:1px solid rgba(42,31,24,.09);
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#4f4943;
  background:rgba(255,255,255,.78);
  box-shadow:0 7px 18px rgba(43,31,23,.055),inset 0 1px rgba(255,255,255,.86);
  cursor:pointer;
  transition:transform var(--motion-fast) var(--ease-spring),box-shadow var(--motion-fast) ease;
}
.testimonial-navigation > button:active { transform:scale(.94); box-shadow:0 2px 8px rgba(43,31,23,.045); }
.testimonial-navigation svg { width:18px; height:18px; }
.testimonial-navigation > span { min-width:31px; color:#7b746d; font-size:9px; font-weight:700; text-align:right; }
.testimonial-dots { display:flex; align-items:center; justify-content:center; gap:6px; }
.testimonial-dots i { width:17px; height:12px; position:relative; display:block; }
.testimonial-dots i::before { content:""; position:absolute; left:50%; top:50%; width:5px; height:5px; border-radius:999px; background:#c9bdb3; transform:translate(-50%,-50%); transition:width var(--motion-normal) var(--ease-spring),background var(--motion-fast) ease; }
.testimonial-dots i.active::before { width:17px; background:linear-gradient(90deg,#f27238,#d9470f); }
.testimonial-conversion {
  margin-top:24px;
  padding:15px;
  border:1px solid rgba(228,81,22,.11);
  border-radius:var(--radius-lg);
  display:grid;
  grid-template-columns:42px 1fr;
  align-items:center;
  gap:11px;
  background:linear-gradient(145deg,rgba(255,255,255,.8),rgba(255,246,240,.82));
  box-shadow:0 10px 28px rgba(70,43,27,.055),inset 0 1px rgba(255,255,255,.85);
}
.testimonial-conversion > span { width:42px; height:42px; border-radius:14px; display:grid; place-items:center; color:#d84a13; background:#fff0e7; }
.testimonial-conversion > span svg { width:19px; height:19px; }
.testimonial-conversion b { font-size:13px; }
.testimonial-conversion p { margin-top:3px; color:#746d67; font-size:9px; }
.testimonial-conversion button { grid-column:1/-1; min-height:50px; padding:0 14px; border:0; border-radius:var(--radius-sm); display:flex; align-items:center; justify-content:space-between; color:#d64710; background:transparent; font-size:11px; font-weight:720; cursor:pointer; }
.testimonial-conversion button svg { width:18px; height:18px; }

.landing-pricing {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,rgba(242,118,61,.16),transparent 24%),
    radial-gradient(circle at -12% 50%,rgba(249,216,199,.4),transparent 28%),
    #f8eee7;
}
.landing-pricing > .subtitle { max-width:345px; font-size:14px; line-height:1.5; }
.free-plan { margin-top:28px; padding:20px; }
.free-plan-price { padding-right:48px; }
.free-plan-price strong { display:block; margin-top:9px; font-size:42px; line-height:1; font-weight:790; letter-spacing:-.06em; }
.free-plan-price > span { display:block; margin-top:6px; color:rgba(255,255,255,.72); font-size:12px; font-weight:650; }
.free-plan > .free-plan-check { top:19px; right:19px; }
.free-plan > p { margin-top:14px; max-width:290px; color:rgba(255,255,255,.62); font-size:11px; line-height:1.48; }
.free-plan > ul { margin:16px 0 0; padding:0; display:grid; gap:8px; list-style:none; }
.free-plan > ul li { display:flex; align-items:center; gap:7px; color:rgba(255,255,255,.76); font-size:9px; }
.free-plan > ul svg { width:14px; height:14px; color:#ff9865; }
.free-plan .primary-button { justify-content:space-between; }
.credit-explainer { margin-top:14px; padding:13px; display:grid; grid-template-columns:42px 1fr; align-items:center; gap:10px; color:#403a35; background:rgba(255,255,255,.62); }
.credit-explainer > span { width:42px; height:42px; border-radius:14px; display:grid; place-items:center; color:#d94910; background:#fff0e7; }
.credit-explainer svg { width:20px; height:20px; }
.credit-explainer b,.credit-explainer small { display:block; }
.credit-explainer b { font-size:11px; font-weight:730; }
.credit-explainer small { margin-top:3px; color:#7b736c; font-size:8px; }
.pricing-model-tabs { margin-top:16px; }
.pricing-swipe-hint { margin:12px 2px 0; color:#817970; font-size:9px; text-align:center; }
.pricing-swipe-hint[hidden] { display:none; }
.paid-plans { margin-top:10px; padding-top:5px; padding-bottom:9px; scroll-padding:20px; overscroll-behavior-x:contain; }
.paid-plan {
  flex-basis:86%;
  min-height:378px;
  padding:19px;
  scroll-snap-stop:always;
  cursor:pointer;
  transition:transform var(--motion-normal) var(--ease-spring),border-color var(--motion-fast) ease,box-shadow var(--motion-normal) ease,background var(--motion-normal) ease;
}
.paid-plan:focus-visible { outline:3px solid rgba(228,81,22,.2); outline-offset:-3px; }
.paid-plan.is-selected { border-color:rgba(228,81,22,.32); background:linear-gradient(155deg,#fff,#fff8f3); transform:translateY(-3px); box-shadow:0 19px 42px rgba(111,51,22,.12),inset 0 1px rgba(255,255,255,.95); }
.paid-plan.featured:not(.is-selected) { box-shadow:0 11px 28px rgba(94,48,25,.07),inset 0 1px rgba(255,255,255,.9); }
.plan-topline { min-height:25px; padding-right:67px; display:flex; align-items:center; justify-content:space-between; gap:8px; }
.plan-topline > small { color:#8b8178; font-size:8px; font-weight:760; letter-spacing:.1em; }
.plan-selected-mark { min-width:25px; min-height:25px; margin-left:auto; border:1px solid rgba(43,33,26,.09); border-radius:9px; display:flex; align-items:center; justify-content:center; gap:4px; color:#9b928a; background:#f5f1ec; transition:color var(--motion-fast) ease,background var(--motion-fast) ease,border-color var(--motion-fast) ease; }
.plan-selected-mark svg { width:13px; height:13px; }
.plan-selected-mark i { display:none; font-style:normal; font-size:7px; font-weight:740; }
.paid-plan.is-selected .plan-selected-mark { border-color:rgba(228,81,22,.16); color:#d8460e; background:#fff0e7; }
.paid-plan.is-selected .plan-selected-mark i { display:block; }
.paid-plan h3 { margin-top:10px; font-size:27px; }
.paid-plan .plan-fit { min-height:43px; margin-top:7px; max-width:245px; color:#6e665f; font-size:10px; line-height:1.45; }
.plan-price { margin-top:20px; display:flex; align-items:baseline; gap:7px; }
.plan-price strong { color:#1c1916; font-size:38px; line-height:1; font-weight:790; letter-spacing:-.055em; }
.plan-price span { color:#776f68; font-size:10px; font-weight:620; }
.paid-plan ul { margin-top:18px; min-height:67px; }
.paid-plan button { margin-top:18px; }
.paid-plan.is-selected button { border-color:rgba(255,255,255,.16); color:white; background:linear-gradient(135deg,#ef672b,#df4a10 55%,#cb3d0b); box-shadow:0 10px 24px rgba(178,53,8,.2),inset 0 1px rgba(255,255,255,.24); }
.paid-plans.pricing-mode-subscription [data-plan-model="subscription"] { flex-basis:100%; }
.pricing-reassurance {
  margin-top:15px;
  padding:15px;
  border:1px solid rgba(42,31,24,.08);
  border-radius:var(--radius-lg);
  display:grid;
  grid-template-columns:40px 1fr;
  gap:11px;
  align-items:center;
  background:rgba(255,255,255,.58);
  box-shadow:inset 0 1px rgba(255,255,255,.8);
}
.pricing-reassurance > span { width:40px; height:40px; border-radius:13px; display:grid; place-items:center; color:#d94810; background:#fff0e7; }
.pricing-reassurance > span svg { width:18px; height:18px; }
.pricing-reassurance b { font-size:12px; }
.pricing-reassurance p { margin-top:3px; color:#756d66; font-size:9px; line-height:1.4; }
.pricing-reassurance button { grid-column:1/-1; min-height:44px; padding:0; border:0; border-top:1px solid rgba(42,31,24,.07); color:#ce430e; background:transparent; text-align:left; font-size:10px; font-weight:720; cursor:pointer; }
.pricing-honesty { max-width:318px; margin:13px auto 0; }

@media (max-width:370px) {
  .testimonial-card { flex-basis:89%; min-height:486px; }
  .testimonial-compare { height:212px; }
  .testimonial-navigation { grid-template-columns:44px 1fr auto 44px; }
  .testimonial-navigation > button { width:44px; height:44px; }
  .paid-plan { flex-basis:88%; padding:17px; }
  .free-plan-price strong { font-size:39px; }
}

@media (prefers-reduced-motion:reduce) {
  .testimonial-dots i::before,.testimonial-navigation > button,.paid-plan,.plan-selected-mark { transition:none !important; }
  .paid-plan.is-selected,.testimonial-card.is-current { transform:none !important; }
  .testimonial-scroll,.paid-plans { scroll-behavior:auto !important; }
}

/* Final landing story: manual editor complexity becomes one calm AI result. */
.editor-story-section {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 102% 8%,rgba(242,118,61,.14),transparent 29%),
    radial-gradient(circle at -15% 76%,rgba(245,220,205,.42),transparent 27%),
    #fffdfa;
}
.editor-story-section::after {
  content:"";
  position:absolute;
  right:-82px;
  top:226px;
  width:190px;
  height:190px;
  border:1px solid rgba(226,83,21,.07);
  border-radius:44%;
  transform:rotate(21deg);
  pointer-events:none;
}
.editor-story-section > * { position:relative; z-index:1; }
.editor-story-section > .subtitle { margin-top:15px; max-width:347px; font-size:14px; line-height:1.5; }
.editor-assistant-story { margin-top:28px; }
.editor-story-tabs {
  min-height:54px;
  padding:5px;
  border:1px solid rgba(49,37,29,.07);
  border-radius:18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  background:rgba(236,229,221,.88);
  box-shadow:inset 0 1px rgba(255,255,255,.7);
}
.editor-story-tabs button {
  min-height:44px;
  padding:0 12px;
  border:0;
  border-radius:13px;
  color:#746d67;
  background:transparent;
  font:inherit;
  font-size:11px;
  font-weight:720;
  cursor:pointer;
  transition:color var(--motion-fast) ease,background var(--motion-normal) ease,box-shadow var(--motion-normal) ease,transform var(--motion-fast) var(--ease-spring);
}
.editor-story-tabs button.active {
  color:#201b18;
  background:white;
  box-shadow:0 8px 20px rgba(41,30,23,.09),inset 0 1px rgba(255,255,255,.9);
}
.editor-story-tabs button:active { transform:scale(.975); }
.editor-story-frame {
  height:502px;
  margin-top:11px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:30px;
  position:relative;
  overflow:hidden;
  color:white;
  background:#201b18;
  box-shadow:0 26px 62px rgba(43,30,21,.2),inset 0 1px rgba(255,255,255,.1);
}
.editor-story-frame::after {
  content:"";
  position:absolute;
  z-index:1;
  inset:39% 0 0;
  background:linear-gradient(transparent,rgba(19,14,11,.85));
  pointer-events:none;
}
.editor-story-frame > img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:52% center;
  transition:filter var(--motion-story) ease,transform var(--motion-story) var(--ease-spring),opacity var(--motion-normal) ease;
}
.show-editor .editor-story-frame > img { filter:saturate(.72) contrast(.9) brightness(.82); transform:scale(1.025); }
.show-assistant .editor-story-frame > img { filter:saturate(1.02) contrast(1.04) brightness(1.02); transform:scale(1); }
.manual-editor-layer,.assistant-result-layer {
  position:absolute;
  z-index:3;
  left:12px;
  right:12px;
  bottom:12px;
  transition:opacity var(--motion-normal) ease,transform var(--motion-story) var(--ease-spring),visibility var(--motion-normal) step-end;
}
.manual-editor-layer {
  min-height:278px;
  padding:16px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:23px;
  background:linear-gradient(145deg,rgba(35,30,27,.82),rgba(27,23,20,.7));
  backdrop-filter:blur(18px);
  box-shadow:0 17px 38px rgba(7,5,4,.25),inset 0 1px rgba(255,255,255,.09);
}
.manual-editor-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.manual-editor-head small { color:#ff9a67; font-size:8px; font-weight:790; letter-spacing:.12em; }
.manual-editor-head span { color:rgba(255,255,255,.58); font-size:8px; font-weight:650; }
.manual-controls { margin-top:17px; display:grid; gap:12px; }
.manual-controls label { display:grid; grid-template-columns:68px 1fr; align-items:center; gap:10px; color:rgba(255,255,255,.77); font-size:9px; }
.manual-controls i {
  height:3px;
  border-radius:99px;
  position:relative;
  display:block;
  background:linear-gradient(90deg,#f47a40 0 var(--value),rgba(255,255,255,.18) var(--value));
}
.manual-controls i::after {
  content:"";
  position:absolute;
  left:var(--value);
  top:50%;
  width:13px;
  height:13px;
  border:2px solid rgba(255,255,255,.8);
  border-radius:50%;
  background:#f16a2e;
  box-shadow:0 4px 9px rgba(0,0,0,.25);
  transform:translate(-50%,-50%);
}
.manual-tools { margin-top:17px; display:flex; flex-wrap:wrap; gap:6px; }
.manual-tools span { min-height:28px; padding:0 8px; border:1px solid rgba(255,255,255,.1); border-radius:999px; display:inline-flex; align-items:center; color:rgba(255,255,255,.66); background:rgba(255,255,255,.055); font-size:8px; }
.manual-editor-layer > p { margin-top:13px; color:rgba(255,255,255,.45); font-size:9px; line-height:1.4; }
.assistant-result-layer {
  min-height:264px;
  padding:18px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(34,27,23,.8),rgba(21,17,14,.7));
  backdrop-filter:blur(20px);
  box-shadow:0 20px 44px rgba(8,5,3,.27),inset 0 1px rgba(255,255,255,.1);
}
.assistant-brand { color:#ff9a68; font-size:8px; font-weight:800; letter-spacing:.13em; }
.assistant-ready { margin-top:14px; padding:11px; border:1px solid rgba(255,255,255,.09); border-radius:16px; display:grid; grid-template-columns:34px 1fr; align-items:center; gap:10px; background:rgba(255,255,255,.065); }
.assistant-ready > i { width:34px; height:34px; border-radius:12px; display:grid; place-items:center; color:white; background:linear-gradient(145deg,#f4793f,#d9460e); box-shadow:0 7px 16px rgba(199,60,10,.27); }
.assistant-ready svg { width:16px; height:16px; }
.assistant-ready b,.assistant-ready small { display:block; }
.assistant-ready b { font-size:12px; }
.assistant-ready small { margin-top:3px; color:rgba(255,255,255,.52); font-size:8px; }
.assistant-result-layer > strong { display:block; margin-top:18px; font-size:27px; line-height:.98; letter-spacing:-.055em; }
.assistant-result-layer > p { margin-top:9px; max-width:245px; color:rgba(255,255,255,.56); font-size:10px; line-height:1.42; }
.assistant-choice { width:max-content; margin-top:14px; padding:7px 9px; border-radius:999px; display:block; color:#ffad85; background:rgba(242,110,51,.12); font-size:8px; font-weight:690; }
.show-editor .manual-editor-layer { opacity:1; visibility:visible; transform:none; }
.show-editor .assistant-result-layer { opacity:0; visibility:hidden; transform:translateY(28px) scale(.97); }
.show-assistant .manual-editor-layer { opacity:0; visibility:hidden; transform:translateY(34px) scale(.96); }
.show-assistant .assistant-result-layer { opacity:1; visibility:visible; transform:none; }
.editor-story-tradeoff { margin-top:11px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.editor-story-tradeoff > span { min-height:79px; padding:12px; border:1px solid rgba(43,32,25,.075); border-radius:18px; display:grid; grid-template-columns:8px 1fr; align-content:center; column-gap:8px; background:rgba(255,255,255,.74); box-shadow:inset 0 1px rgba(255,255,255,.8); }
.editor-story-tradeoff i { grid-row:1/3; align-self:start; width:7px; height:7px; margin-top:3px; border-radius:50%; background:#b9afa7; }
.editor-story-tradeoff span:last-child i { background:#eb672c; box-shadow:0 0 0 4px rgba(235,103,44,.1); }
.editor-story-tradeoff b,.editor-story-tradeoff small { display:block; }
.editor-story-tradeoff b { font-size:11px; }
.editor-story-tradeoff small { margin-top:4px; color:#817970; font-size:8px; line-height:1.35; }

/* Final landing story: one photograph moves through the whole product. */
.product-journey {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 5%,rgba(242,118,61,.14),transparent 27%),
    linear-gradient(180deg,#fffdfa,#f6eee7);
}
.product-journey > .subtitle { margin-top:15px; max-width:345px; font-size:14px; line-height:1.5; }
.journey-story { margin-top:28px; }
.journey-screen {
  height:405px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:30px;
  position:relative;
  overflow:hidden;
  color:white;
  background:#201b18;
  box-shadow:0 26px 62px rgba(51,33,22,.2),inset 0 1px rgba(255,255,255,.1);
}
.journey-panel {
  position:absolute;
  inset:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(12px) scale(.985);
  transition:opacity var(--motion-normal) ease,transform var(--motion-story) var(--ease-spring),visibility var(--motion-normal) step-end;
}
.journey-panel.is-active { opacity:1; visibility:visible; pointer-events:auto; transform:none; transition-delay:80ms; }
.journey-upload { display:grid; place-items:center; background:radial-gradient(circle at 50% 32%,#fbf0e8,#e8d9cc 69%,#d7c5b5); }
.journey-upload::before { content:""; position:absolute; inset:18px; border:1px dashed rgba(97,63,43,.17); border-radius:23px; }
.journey-upload-target { width:278px; min-height:205px; padding:15px; border:1px solid rgba(255,255,255,.76); border-radius:24px; display:grid; grid-template-columns:44px 87px 1fr; align-items:center; gap:11px; color:#332820; background:rgba(255,255,255,.82); backdrop-filter:blur(15px); box-shadow:0 20px 43px rgba(58,38,24,.14),inset 0 1px rgba(255,255,255,.9); }
.journey-upload-target > span { width:44px; height:44px; border-radius:15px; display:grid; place-items:center; color:#dc4a11; background:#fff0e7; }
.journey-upload-target > span svg { width:19px; height:19px; }
.journey-upload-target img { width:87px; height:116px; border-radius:16px; object-fit:cover; box-shadow:0 9px 22px rgba(45,28,18,.15); }
.journey-upload-target small,.journey-upload-target b,.journey-upload-target em { display:block; }
.journey-upload-target small { color:#a06446; font-size:7px; font-weight:800; letter-spacing:.11em; }
.journey-upload-target b { margin-top:7px; font-size:11px; }
.journey-upload-target em { margin-top:10px; color:#33795b; font-size:8px; font-style:normal; font-weight:700; }
.journey-upload-target em svg { width:12px; height:12px; vertical-align:-3px; }
.journey-upload.is-active .journey-upload-target img { animation:journey-photo-drop 620ms var(--ease-spring) both; }
@keyframes journey-photo-drop { from { opacity:0; transform:translateY(-20px) rotate(-4deg) scale(.93); } to { opacity:1; transform:none; } }
.journey-analysis { overflow:hidden; background:#1c1815; }
.journey-analysis::after { content:""; position:absolute; z-index:1; inset:42% 0 0; background:linear-gradient(transparent,rgba(15,11,9,.92)); }
.journey-analysis > img { width:100%; height:100%; object-fit:cover; object-position:52% center; opacity:.73; filter:saturate(.76) brightness(.84); }
.journey-analysis > i { position:absolute; z-index:3; min-height:33px; padding:0 10px; border:1px solid rgba(255,255,255,.16); border-radius:999px; display:flex; align-items:center; opacity:0; color:white; background:rgba(25,20,17,.48); backdrop-filter:blur(13px); font-size:9px; font-style:normal; font-weight:680; }
.journey-analysis > i::before { content:""; width:6px; height:6px; margin-right:6px; border-radius:50%; background:#ff7f43; box-shadow:0 0 0 4px rgba(255,127,67,.12); }
.journey-analysis .jp-one { left:17px; top:18%; }
.journey-analysis .jp-two { right:17px; top:38%; }
.journey-analysis .jp-three { left:17px; top:57%; }
.journey-scan { position:absolute; z-index:2; left:7%; right:7%; top:9%; height:1px; opacity:0; background:linear-gradient(90deg,transparent,#ff8a4e,transparent); box-shadow:0 0 18px rgba(255,120,55,.9); }
.journey-analysis > div { position:absolute; z-index:3; left:17px; right:17px; bottom:18px; padding:14px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(27,21,17,.62); backdrop-filter:blur(17px); }
.journey-analysis > div small,.journey-analysis > div b { display:block; }
.journey-analysis > div small { color:#ff9561; font-size:8px; font-weight:800; letter-spacing:.12em; }
.journey-analysis > div b { margin-top:6px; font-size:17px; letter-spacing:-.03em; }
.journey-analysis.is-active .journey-scan { animation:journey-scan 1.9s ease-in-out both; }
.journey-analysis.is-active > i { animation:journey-point 420ms var(--ease-spring) both; }
.journey-analysis.is-active .jp-one { animation-delay:320ms; }
.journey-analysis.is-active .jp-two { animation-delay:680ms; }
.journey-analysis.is-active .jp-three { animation-delay:1040ms; }
@keyframes journey-scan { 0% { opacity:0; transform:translateY(0); } 14% { opacity:1; } 82% { opacity:.9; transform:translateY(285px); } 100% { opacity:0; transform:translateY(320px); } }
@keyframes journey-point { from { opacity:0; transform:translateY(7px) scale(.95); } to { opacity:1; transform:none; } }
.journey-fix { background:#251f1b; }
.journey-fix .journey-compare { position:absolute; inset:0; height:100%; aspect-ratio:auto; border-radius:0; box-shadow:none; }
.journey-fix .journey-compare .compare-hint { bottom:72px; }
.journey-fix-caption { position:absolute; z-index:7; left:16px; bottom:16px; padding:12px 14px; border:1px solid rgba(255,255,255,.17); border-radius:17px; color:white; background:rgba(24,18,15,.54); backdrop-filter:blur(16px); box-shadow:inset 0 1px rgba(255,255,255,.08); }
.journey-fix-caption small,.journey-fix-caption b { display:block; }
.journey-fix-caption small { color:#ff9a68; font-size:8px; font-weight:800; letter-spacing:.11em; }
.journey-fix-caption b { margin-top:5px; font-size:13px; }
.journey-choose { padding:18px; display:flex; flex-direction:column; justify-content:center; background:radial-gradient(circle at 50% 36%,#4b3328,#241c18 67%); }
.journey-result-cards { height:252px; position:relative; }
.journey-result-cards figure { width:136px; height:202px; margin:0; border:1px solid rgba(255,255,255,.13); border-radius:22px; position:absolute; left:50%; top:25px; overflow:hidden; background:#5b4c42; box-shadow:0 16px 30px rgba(0,0,0,.27); transform-origin:50% 95%; transition:transform var(--motion-story) var(--ease-spring); }
.journey-result-cards figure:first-child { transform:translateX(-119%) rotate(-8deg) scale(.9); }
.journey-result-cards figure:nth-child(2) { z-index:2; transform:translateX(-50%) translateY(-10px); border-color:rgba(255,129,68,.72); box-shadow:0 23px 42px rgba(0,0,0,.36),0 0 0 4px rgba(238,103,43,.1); }
.journey-result-cards figure:last-child { transform:translateX(19%) rotate(8deg) scale(.9); }
.journey-result-cards img { width:100%; height:100%; object-fit:cover; }
.journey-result-cards figure[data-filter="smart"] img { filter:saturate(1.04) contrast(1.05) brightness(1.02); }
.journey-result-cards figcaption { position:absolute; left:8px; right:8px; bottom:8px; min-height:30px; padding:0 8px; border:1px solid rgba(255,255,255,.14); border-radius:10px; display:flex; align-items:center; justify-content:center; color:white; background:rgba(21,16,13,.44); backdrop-filter:blur(12px); font-size:8px; font-weight:720; }
.journey-result-cards figcaption svg { width:12px; height:12px; margin-right:4px; }
.journey-choose.is-active .journey-result-cards figure:first-child { animation:journey-left 600ms var(--ease-spring) both; }
.journey-choose.is-active .journey-result-cards figure:nth-child(2) { animation:journey-center 650ms var(--ease-spring) both; }
.journey-choose.is-active .journey-result-cards figure:last-child { animation:journey-right 600ms var(--ease-spring) both; }
@keyframes journey-left { from { opacity:0; transform:translateX(-65%) scale(.75); } to { opacity:1; transform:translateX(-119%) rotate(-8deg) scale(.9); } }
@keyframes journey-center { from { opacity:0; transform:translateX(-50%) translateY(18px) scale(.9); } to { opacity:1; transform:translateX(-50%) translateY(-10px); } }
@keyframes journey-right { from { opacity:0; transform:translateX(-65%) scale(.75); } to { opacity:1; transform:translateX(19%) rotate(8deg) scale(.9); } }
.journey-save { min-height:55px; padding:10px 12px; border:1px solid rgba(255,255,255,.12); border-radius:17px; display:grid; grid-template-columns:34px 1fr; align-items:center; gap:10px; background:rgba(255,255,255,.075); backdrop-filter:blur(14px); }
.journey-save > svg { width:34px; height:34px; padding:8px; border-radius:12px; color:white; background:linear-gradient(145deg,#f4783e,#d9460e); }
.journey-save b,.journey-save small { display:block; }
.journey-save b { font-size:11px; }
.journey-save small { margin-top:3px; color:rgba(255,255,255,.48); font-size:8px; }
.journey-active-copy { min-height:96px; margin-top:13px; padding:14px; border:1px solid rgba(46,33,25,.075); border-radius:20px; display:grid; grid-template-columns:44px 1fr; align-items:start; gap:11px; background:rgba(255,255,255,.7); box-shadow:inset 0 1px rgba(255,255,255,.84); }
.journey-active-copy > span { width:44px; height:44px; border-radius:15px; display:grid; place-items:center; color:white; background:linear-gradient(145deg,#f4773d,#d9460e); box-shadow:0 9px 19px rgba(200,61,10,.19); font-size:10px; font-weight:800; }
.journey-active-copy h3 { font-size:17px; line-height:1.08; letter-spacing:-.035em; }
.journey-active-copy p { margin-top:5px; color:#777068; font-size:10px; line-height:1.4; }
.journey-progress { margin-top:10px; display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }
.journey-progress button { min-height:48px; border:1px solid rgba(43,31,24,.08); border-radius:15px; color:#8c837b; background:rgba(255,255,255,.64); box-shadow:inset 0 1px rgba(255,255,255,.82); font:inherit; font-size:9px; font-weight:780; cursor:pointer; transition:color var(--motion-fast) ease,background var(--motion-normal) ease,border-color var(--motion-fast) ease,transform var(--motion-fast) var(--ease-spring),box-shadow var(--motion-normal) ease; }
.journey-progress button.active { border-color:rgba(222,76,17,.24); color:#d9460e; background:#fff4ed; box-shadow:0 8px 20px rgba(125,59,29,.08),inset 0 1px rgba(255,255,255,.9); }
.journey-progress button:active { transform:scale(.95); }

@media (max-width:370px) {
  .editor-story-frame { height:482px; }
  .manual-editor-layer { min-height:270px; padding:14px; }
  .assistant-result-layer { padding:16px; }
  .assistant-result-layer > strong { font-size:25px; }
  .journey-screen { height:388px; }
  .journey-upload-target { width:264px; grid-template-columns:40px 82px 1fr; gap:9px; }
  .journey-upload-target > span { width:40px; height:40px; }
  .journey-upload-target img { width:82px; height:110px; }
  .journey-result-cards figure { width:128px; height:194px; }
}

@media (prefers-reduced-motion:reduce) {
  .editor-story-frame > img,.manual-editor-layer,.assistant-result-layer,.editor-story-tabs button,.journey-panel,.journey-progress button,.journey-result-cards figure { transition:none !important; }
  .journey-upload.is-active .journey-upload-target img,.journey-analysis.is-active .journey-scan,.journey-analysis.is-active > i,.journey-choose.is-active .journey-result-cards figure { animation:none !important; opacity:1 !important; }
  .journey-analysis .journey-scan { display:none; }
}

/* Editor or Assistant rethink: one photo, manual decisions → AI analysis → proof. */
.editor-story-section {
  padding-top:82px;
  padding-bottom:84px;
  background:
    radial-gradient(circle at 102% 3%,rgba(237,101,42,.16),transparent 28%),
    radial-gradient(circle at -18% 82%,rgba(237,211,195,.44),transparent 27%),
    linear-gradient(180deg,#fffdfa,#fbf6f1);
}
.editor-story-section::after { top:238px; border-color:rgba(226,83,21,.09); }
.editor-story-section h2 { max-width:355px; font-size:35px; line-height:.99; letter-spacing:-.055em; }
.editor-story-section > .subtitle { max-width:350px; margin-top:17px; color:#69625c; font-size:14px; line-height:1.53; }
.editor-assistant-story { margin-top:29px; }
.editor-story-frame {
  height:520px;
  margin-top:0;
  border:1px solid rgba(255,255,255,.14);
  border-radius:31px;
  position:relative;
  overflow:hidden;
  color:white;
  background:#1b1714;
  box-shadow:0 29px 66px rgba(43,29,20,.22),0 3px 10px rgba(43,29,20,.1),inset 0 1px rgba(255,255,255,.1);
}
.editor-story-frame::before { content:""; position:absolute; z-index:2; inset:0; border-radius:inherit; box-shadow:inset 0 0 0 1px rgba(255,255,255,.055); pointer-events:none; }
.editor-story-frame::after { z-index:1; inset:30% 0 0; background:linear-gradient(transparent,rgba(18,13,10,.78)); }
.editor-scene-photo {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:52% center;
  transition:filter 900ms ease,transform 1100ms var(--ease-spring),opacity var(--motion-normal) ease;
}
.editor-scene-editor .editor-scene-photo { filter:saturate(.68) contrast(.91) brightness(.77); transform:scale(1.035); }
.editor-scene-analysis .editor-scene-photo { filter:saturate(.76) contrast(.96) brightness(.68); transform:scale(1.018); }
.editor-scene-result .editor-scene-photo { opacity:0; filter:saturate(1.02) contrast(1.03) brightness(1.01); transform:scale(1); }
.editor-scene-glow { position:absolute; z-index:2; inset:auto -18% -28% 18%; height:58%; border-radius:50%; opacity:0; background:radial-gradient(circle,rgba(233,87,25,.24),transparent 66%); pointer-events:none; transition:opacity 700ms ease; }
.editor-scene-analysis .editor-scene-glow { opacity:1; }

.editor-story-frame .manual-editor-layer {
  inset:0;
  min-height:0;
  padding:14px;
  border:0;
  border-radius:0;
  opacity:1;
  visibility:visible;
  background:transparent;
  backdrop-filter:none;
  box-shadow:none;
  transform:none;
  transition:none;
}
.manual-topbar { min-height:38px; padding:0 11px; border:1px solid rgba(255,255,255,.11); border-radius:13px; display:flex; align-items:center; justify-content:space-between; color:rgba(255,255,255,.63); background:rgba(28,23,20,.43); backdrop-filter:blur(14px); transition:opacity 380ms ease,transform 650ms var(--ease-spring); }
.manual-topbar span { color:#ff9a68; font-size:8px; font-weight:800; letter-spacing:.13em; }
.manual-topbar small { font-size:8px; font-weight:650; }
.manual-question { position:absolute; z-index:2; left:17px; top:67px; padding:11px 13px; border:1px solid rgba(255,255,255,.12); border-radius:15px; background:rgba(27,21,18,.43); backdrop-filter:blur(14px); transition:opacity 340ms ease,transform 620ms var(--ease-spring); }
.manual-question small,.manual-question strong { display:block; }
.manual-question small { color:#ff9a68; font-size:7px; font-weight:800; letter-spacing:.11em; }
.manual-question strong { margin-top:5px; font-size:14px; letter-spacing:-.025em; }
.manual-float { position:absolute; z-index:2; min-width:95px; min-height:42px; padding:8px 10px; border:1px solid rgba(255,255,255,.12); border-radius:14px; display:flex; align-items:center; justify-content:space-between; gap:9px; color:white; background:rgba(27,21,18,.48); backdrop-filter:blur(15px); box-shadow:0 9px 22px rgba(8,5,3,.12); transition:opacity 360ms ease,transform 760ms var(--ease-spring); }
.manual-float small { color:rgba(255,255,255,.54); font-size:7px; }
.manual-float b { color:#ff9a68; font-size:9px; }
.manual-float-a { top:126px; right:14px; transition-delay:40ms; }
.manual-float-b { top:184px; left:14px; transition-delay:80ms; }
.manual-float-c { top:243px; right:14px; transition-delay:120ms; }
.manual-workbench { position:absolute; z-index:3; left:12px; right:12px; bottom:12px; min-height:203px; padding:15px; border:1px solid rgba(255,255,255,.13); border-radius:23px; background:linear-gradient(145deg,rgba(34,28,25,.84),rgba(24,20,17,.75)); backdrop-filter:blur(19px); box-shadow:0 18px 39px rgba(7,5,4,.26),inset 0 1px rgba(255,255,255,.09); transition:opacity 380ms ease,transform 820ms var(--ease-spring); }
.manual-workbench .manual-controls { margin-top:0; display:grid; gap:13px; }
.manual-workbench .manual-controls label { grid-template-columns:57px 1fr; gap:9px; color:rgba(255,255,255,.76); font-size:9px; }
.manual-workbench .manual-tools { margin-top:16px; gap:6px; }
.manual-workbench .manual-tools span { min-height:27px; padding:0 7px; font-size:7px; }
.manual-workbench > p { margin-top:12px; color:rgba(255,255,255,.44); font-size:8px; line-height:1.35; }
.editor-scene-analysis .manual-topbar,.editor-scene-result .manual-topbar { opacity:0; transform:translateY(-55px); }
.editor-scene-analysis .manual-question,.editor-scene-result .manual-question { opacity:0; transform:translateX(-95px) scale(.92); }
.editor-scene-analysis .manual-float-a,.editor-scene-result .manual-float-a { opacity:0; transform:translateX(130px) rotate(5deg) scale(.88); }
.editor-scene-analysis .manual-float-b,.editor-scene-result .manual-float-b { opacity:0; transform:translateX(-130px) rotate(-5deg) scale(.88); }
.editor-scene-analysis .manual-float-c,.editor-scene-result .manual-float-c { opacity:0; transform:translateX(130px) rotate(6deg) scale(.88); }
.editor-scene-analysis .manual-workbench,.editor-scene-result .manual-workbench { opacity:0; transform:translateY(225px) scale(.97); }

.luma-analysis-layer,.luma-result-layer { position:absolute; z-index:4; inset:0; opacity:0; visibility:hidden; pointer-events:none; transition:opacity 760ms ease,transform 1080ms var(--ease-spring),visibility 760ms step-end; }
.luma-analysis-layer { padding:17px; transform:translateY(14px); background:linear-gradient(180deg,rgba(18,14,12,.12),rgba(18,13,10,.74)); }
.editor-scene-analysis .luma-analysis-layer { opacity:1; visibility:visible; pointer-events:auto; transform:none; transition:opacity 760ms ease 120ms,transform 1080ms var(--ease-spring) 120ms,visibility 0s linear 120ms; }
.analysis-story-brand { min-height:40px; padding:0 10px; border:1px solid rgba(255,255,255,.11); border-radius:14px; display:flex; align-items:center; gap:9px; width:max-content; background:rgba(25,20,17,.43); backdrop-filter:blur(14px); }
.analysis-story-brand .brand-mark { width:25px; height:25px; border-radius:8px; display:grid; place-items:center; color:white; background:linear-gradient(145deg,#f4773d,#d8450e); font-size:10px; font-weight:800; }
.analysis-story-brand b { color:rgba(255,255,255,.82); font-size:8px; letter-spacing:.035em; }
.analysis-story-copy { margin-top:64px; }
.analysis-story-copy small { color:#ff9865; font-size:8px; font-weight:800; letter-spacing:.12em; }
.analysis-story-copy strong { display:block; margin-top:9px; font-size:31px; line-height:.98; letter-spacing:-.056em; }
.analysis-story-copy p { margin-top:10px; color:rgba(255,255,255,.55); font-size:10px; }
.editor-analysis-scan { position:absolute; left:8%; right:8%; top:11%; height:1px; opacity:0; background:linear-gradient(90deg,transparent,#ff8a4d,transparent); box-shadow:0 0 20px rgba(255,118,53,.9); }
.editor-scene-analysis .editor-analysis-scan { animation:editor-story-scan 3s ease-in-out .24s both; }
@keyframes editor-story-scan { 0% { opacity:0; transform:translateY(0); } 14% { opacity:1; } 82% { opacity:.9; transform:translateY(320px); } 100% { opacity:0; transform:translateY(354px); } }
.analysis-story-checks { position:absolute; left:16px; right:16px; bottom:81px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.analysis-story-checks > span { min-height:47px; padding:0 11px; border:1px solid rgba(255,255,255,.11); border-radius:15px; display:flex; align-items:center; gap:8px; opacity:0; background:rgba(31,25,21,.62); backdrop-filter:blur(15px); transform:translateY(8px); }
.analysis-story-checks svg { width:19px; height:19px; padding:4px; border-radius:7px; color:white; background:#e65117; }
.analysis-story-checks b { font-size:9px; }
.editor-scene-analysis .analysis-story-checks > span { animation:editor-check-in 620ms var(--ease-spring) both; }
.editor-scene-analysis .analysis-story-checks > span:nth-child(1) { animation-delay:.65s; }
.editor-scene-analysis .analysis-story-checks > span:nth-child(2) { animation-delay:1.3s; }
.editor-scene-analysis .analysis-story-checks > span:nth-child(3) { animation-delay:1.95s; }
.editor-scene-analysis .analysis-story-checks > span:nth-child(4) { animation-delay:2.55s; }
@keyframes editor-check-in { to { opacity:1; transform:none; } }
.analysis-story-progress { position:absolute; left:17px; right:17px; bottom:25px; }
.analysis-story-progress::before { content:""; position:absolute; left:0; right:0; top:0; height:3px; border-radius:99px; background:rgba(255,255,255,.13); }
.analysis-story-progress i { width:0; height:3px; border-radius:99px; display:block; background:linear-gradient(90deg,#f4783e,#ff9a69); box-shadow:0 0 14px rgba(240,100,41,.4); }
.editor-scene-analysis .analysis-story-progress i { animation:editor-analysis-progress 3.2s ease .2s both; }
@keyframes editor-analysis-progress { to { width:100%; } }
.analysis-story-progress small { display:block; margin-top:10px; color:rgba(255,255,255,.52); font-size:8px; }

.luma-result-layer { transform:scale(.985); background:#241e1a; }
.editor-scene-result .luma-result-layer { opacity:1; visibility:visible; pointer-events:auto; transform:none; transition:opacity 760ms ease,transform 1080ms var(--ease-spring),visibility 0s linear; }
.editor-result-compare { position:absolute; inset:0; height:100%; aspect-ratio:auto; border-radius:0 !important; box-shadow:none !important; }
.editor-result-compare .compare-hint { bottom:103px; }
.editor-result-proof { position:absolute; z-index:8; left:13px; right:13px; bottom:13px; min-height:76px; padding:11px; border:1px solid rgba(255,255,255,.17); border-radius:19px; display:grid; grid-template-columns:40px 1fr; align-items:center; gap:10px; color:white; background:linear-gradient(145deg,rgba(31,24,20,.74),rgba(23,18,15,.68)); backdrop-filter:blur(18px); box-shadow:0 14px 32px rgba(10,7,5,.23),inset 0 1px rgba(255,255,255,.09); }
.editor-result-proof > span { width:40px; height:40px; border-radius:14px; display:grid; place-items:center; color:white; background:linear-gradient(145deg,#f4783e,#d9460e); box-shadow:0 8px 18px rgba(196,58,9,.28); }
.editor-result-proof svg { width:17px; height:17px; }
.editor-result-proof small,.editor-result-proof b,.editor-result-proof em { display:block; }
.editor-result-proof small { color:#ff9d6d; font-size:7px; font-weight:800; letter-spacing:.11em; }
.editor-result-proof b { margin-top:4px; font-size:12px; }
.editor-result-proof em { margin-top:4px; color:rgba(255,255,255,.5); font-size:7px; font-style:normal; }

.editor-scene-status { min-height:101px; margin-top:12px; padding:14px; border:1px solid rgba(46,33,25,.075); border-radius:20px; display:grid; grid-template-columns:83px 1fr; align-items:start; gap:11px; background:rgba(255,255,255,.74); box-shadow:inset 0 1px rgba(255,255,255,.86); }
.editor-scene-status > span { min-height:27px; padding:0 8px; border-radius:999px; display:flex; align-items:center; justify-content:center; color:#c5410e; background:#fff0e7; font-size:7px; font-weight:800; letter-spacing:.045em; text-align:center; }
.editor-scene-status h3 { font-size:16px; line-height:1.09; letter-spacing:-.035em; }
.editor-scene-status p { margin-top:6px; color:#766f68; font-size:9px; line-height:1.42; }
.editor-conversion-cta { min-height:58px; margin-top:22px; border-color:rgba(255,255,255,.18); color:white; background:linear-gradient(135deg,#f06e31,#e34f13 56%,#ce3f0b); box-shadow:0 13px 29px rgba(184,54,7,.23),inset 0 1px rgba(255,255,255,.25); }

@media (max-width:370px) {
  .editor-story-section h2 { font-size:32px; }
  .editor-story-section > .subtitle { font-size:13px; }
  .editor-story-frame { height:500px; }
  .analysis-story-copy { margin-top:58px; }
  .analysis-story-copy strong { font-size:28px; }
  .manual-workbench { min-height:197px; padding:13px; }
  .manual-float { min-width:88px; }
  .editor-scene-status { grid-template-columns:77px 1fr; padding:12px; }
}

@media (prefers-reduced-motion:reduce) {
  .editor-scene-photo,.manual-topbar,.manual-question,.manual-float,.manual-workbench,.luma-analysis-layer,.luma-result-layer,.editor-result-compare { animation:none !important; transition:none !important; }
  .editor-analysis-scan { display:none !important; }
  .analysis-story-checks > span { opacity:1 !important; transform:none !important; animation:none !important; }
  .analysis-story-progress i { width:100% !important; animation:none !important; }
  .editor-scene-analysis .manual-topbar,.editor-scene-analysis .manual-question,.editor-scene-analysis .manual-float,.editor-scene-analysis .manual-workbench,.editor-scene-result .manual-topbar,.editor-scene-result .manual-question,.editor-scene-result .manual-float,.editor-scene-result .manual-workbench { opacity:0 !important; }
}

/* Automatic editor → Luma story. No tabs, toggles or required interaction. */
.editor-story-section > .subtitle { max-width:351px; }
.editor-story-frame { height:540px; }
.manual-workbench { min-height:220px; }
.manual-workbench .manual-controls label { grid-template-columns:76px 28px 1fr; gap:7px; }
.manual-workbench .manual-controls label > span { color:rgba(255,255,255,.74); }
.manual-workbench .manual-controls em { color:#ff9d6d; font-size:8px; font-style:normal; font-weight:760; text-align:right; transition:color 320ms ease; }
.manual-workbench .manual-controls i,.manual-workbench .manual-controls i::after { transition:background 1200ms var(--ease-spring),left 1200ms var(--ease-spring); }
.manual-loop { min-height:24px; margin-top:11px; padding:0 4px; display:flex; align-items:center; justify-content:space-between; color:rgba(255,255,255,.47); }
.manual-loop span { font-size:7px; font-weight:700; }
.manual-loop i { width:13px; height:13px; display:grid; place-items:center; color:#f47a40; opacity:.64; }
.manual-loop svg { width:12px; height:12px; }
.manual-workbench > p { margin-top:9px; }

.story-started.editor-scene-editor .manual-topbar { animation:editor-control-enter 650ms var(--ease-spring) both; }
.story-started.editor-scene-editor .manual-question { animation:editor-control-enter 650ms var(--ease-spring) .12s both; }
.story-started.editor-scene-editor .manual-float-a { animation:editor-control-enter 650ms var(--ease-spring) .24s both; }
.story-started.editor-scene-editor .manual-float-b { animation:editor-control-enter 650ms var(--ease-spring) .36s both; }
.story-started.editor-scene-editor .manual-float-c { animation:editor-control-enter 650ms var(--ease-spring) .48s both; }
.story-started.editor-scene-editor .manual-workbench { animation:editor-workbench-enter 800ms var(--ease-spring) .32s both; }
@keyframes editor-control-enter { from { opacity:0; transform:translateY(10px) scale(.96); } to { opacity:1; transform:none; } }
@keyframes editor-workbench-enter { from { opacity:0; transform:translateY(42px) scale(.98); } to { opacity:1; transform:none; } }

.editor-scene-iterate .editor-scene-photo { animation:editor-manual-test 2.6s ease-in-out both; }
@keyframes editor-manual-test { 0% { filter:saturate(.68) contrast(.91) brightness(.77); } 42% { filter:saturate(.92) contrast(1.01) brightness(1.08); } 72% { filter:saturate(1.08) contrast(1.07) brightness(1.02); } 100% { filter:saturate(.9) contrast(.98) brightness(.94); } }
.editor-scene-iterate .manual-question { border-color:rgba(244,123,65,.24); background:rgba(44,28,21,.62); }
.editor-scene-iterate .manual-question small { color:#ffc0a0; }
.editor-scene-iterate .manual-controls em { color:#ffb084; }
.editor-scene-iterate .manual-loop span { animation:editor-loop-step 1.6s ease-in-out both; }
.editor-scene-iterate .manual-loop span:nth-of-type(2) { animation-delay:.8s; }
.editor-scene-iterate .manual-loop span:nth-of-type(3) { animation-delay:1.6s; }
@keyframes editor-loop-step { 0%,100% { color:rgba(255,255,255,.47); } 42%,70% { color:#ff9c69; } }

.editor-scene-handoff .manual-topbar,.editor-scene-handoff .manual-question,.editor-scene-handoff .manual-workbench,.editor-scene-analysis .manual-topbar,.editor-scene-analysis .manual-question,.editor-scene-analysis .manual-workbench,.editor-scene-result .manual-topbar,.editor-scene-result .manual-question,.editor-scene-result .manual-workbench,.editor-scene-choice .manual-topbar,.editor-scene-choice .manual-question,.editor-scene-choice .manual-workbench { opacity:0; }
.editor-scene-handoff .manual-topbar,.editor-scene-analysis .manual-topbar,.editor-scene-result .manual-topbar,.editor-scene-choice .manual-topbar { transform:translateY(-55px); }
.editor-scene-handoff .manual-question,.editor-scene-analysis .manual-question,.editor-scene-result .manual-question,.editor-scene-choice .manual-question { transform:translateX(-95px) scale(.92); }
.editor-scene-handoff .manual-workbench,.editor-scene-analysis .manual-workbench,.editor-scene-result .manual-workbench,.editor-scene-choice .manual-workbench { transform:translateY(240px) scale(.97); }
.editor-scene-handoff .manual-float-a,.editor-scene-analysis .manual-float-a,.editor-scene-result .manual-float-a,.editor-scene-choice .manual-float-a { opacity:0; transform:translateX(130px) rotate(5deg) scale(.88); }
.editor-scene-handoff .manual-float-b,.editor-scene-analysis .manual-float-b,.editor-scene-result .manual-float-b,.editor-scene-choice .manual-float-b { opacity:0; transform:translateX(-130px) rotate(-5deg) scale(.88); }
.editor-scene-handoff .manual-float-c,.editor-scene-analysis .manual-float-c,.editor-scene-result .manual-float-c,.editor-scene-choice .manual-float-c { opacity:0; transform:translateX(130px) rotate(6deg) scale(.88); }

.editor-handoff-layer { position:absolute; z-index:5; inset:0; padding:28px; display:flex; flex-direction:column; justify-content:center; opacity:0; visibility:hidden; color:white; background:radial-gradient(circle at 50% 44%,rgba(234,91,28,.25),transparent 36%),linear-gradient(180deg,rgba(22,17,14,.18),rgba(20,15,12,.78)); pointer-events:none; transform:scale(.98); transition:opacity 800ms ease,transform 1100ms var(--ease-spring),visibility 800ms step-end; }
.editor-handoff-layer small { color:#ff9b68; font-size:8px; font-weight:800; letter-spacing:.13em; }
.editor-handoff-layer strong { display:block; max-width:280px; margin-top:12px; font-size:36px; line-height:.96; letter-spacing:-.06em; }
.editor-handoff-layer p { max-width:270px; margin-top:15px; color:rgba(255,255,255,.58); font-size:11px; line-height:1.5; }
.editor-scene-handoff .editor-handoff-layer { opacity:1; visibility:visible; transform:none; transition:opacity 800ms ease,transform 1100ms var(--ease-spring),visibility 0s linear; }
.editor-scene-handoff .editor-scene-photo { filter:saturate(.78) contrast(.95) brightness(.76); transform:scale(1.01); }

.editor-scene-choice .editor-scene-photo { opacity:0; }
.editor-scene-choice .luma-result-layer { opacity:1; visibility:visible; pointer-events:auto; transform:none; transition:opacity 760ms ease,transform 1080ms var(--ease-spring),visibility 0s linear; }
.analysis-story-copy { margin-top:58px; }
.analysis-story-copy strong { max-width:285px; font-size:29px; }
.analysis-story-checks { bottom:78px; }
.analysis-story-checks > span { padding:7px 9px; align-items:center; }
.analysis-story-checks > span > span { min-width:0; }
.analysis-story-checks b,.analysis-story-checks small { display:block; }
.analysis-story-checks b { font-size:9px; }
.analysis-story-checks small { margin-top:3px; overflow:hidden; color:rgba(255,255,255,.45); font-size:6px; text-overflow:ellipsis; white-space:nowrap; }
.editor-result-compare .compare-hint { display:none; }
.editor-result-proof { transition:opacity 420ms ease,transform 620ms var(--ease-spring); }
.editor-result-variants { position:absolute; z-index:9; left:12px; right:12px; bottom:12px; padding:11px; border:1px solid rgba(255,255,255,.16); border-radius:20px; opacity:0; visibility:hidden; color:white; background:linear-gradient(145deg,rgba(31,24,20,.78),rgba(23,18,15,.72)); backdrop-filter:blur(18px); box-shadow:0 15px 34px rgba(9,6,4,.26),inset 0 1px rgba(255,255,255,.09); transform:translateY(18px); transition:opacity 760ms ease,transform 1000ms var(--ease-spring),visibility 760ms step-end; }
.editor-result-variants > small { display:block; color:#ff9c6b; font-size:7px; font-weight:800; letter-spacing:.12em; }
.editor-result-variants > div { margin-top:8px; display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }
.editor-result-variants figure { min-width:0; height:94px; margin:0; border:1px solid rgba(255,255,255,.11); border-radius:13px; position:relative; overflow:hidden; background:#4e4036; }
.editor-result-variants figure:first-child { border-color:rgba(255,126,62,.72); box-shadow:0 0 0 2px rgba(238,103,43,.12); }
.editor-result-variants img { width:100%; height:100%; object-fit:cover; }
.editor-result-variants figcaption { position:absolute; left:4px; right:4px; bottom:4px; min-height:20px; padding:0 3px; border-radius:7px; display:flex; align-items:center; justify-content:center; overflow:hidden; color:white; background:rgba(20,15,12,.54); backdrop-filter:blur(8px); font-size:6px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }
.editor-scene-choice .editor-result-proof { opacity:0; transform:translateY(16px); }
.editor-scene-choice .editor-result-variants { opacity:1; visibility:visible; transform:none; transition:opacity 760ms ease,transform 1000ms var(--ease-spring),visibility 0s linear; }
.editor-scene-choice .editor-result-variants figure { animation:editor-variant-in 720ms var(--ease-spring) both; }
.editor-scene-choice .editor-result-variants figure:nth-child(2) { animation-delay:.18s; }
.editor-scene-choice .editor-result-variants figure:nth-child(3) { animation-delay:.36s; }
.editor-scene-choice .editor-result-variants figure:nth-child(4) { animation-delay:.54s; }
@keyframes editor-variant-in { from { opacity:0; transform:translateY(11px) scale(.94); } to { opacity:1; transform:none; } }

.editor-static-flow { display:none; }
.editor-final-message { margin-top:26px; padding:22px 18px; border:1px solid rgba(222,76,17,.11); border-radius:25px; background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(255,242,234,.88)); box-shadow:0 15px 38px rgba(76,43,25,.07),inset 0 1px rgba(255,255,255,.9); }
.editor-final-message > .eyebrow { color:#d8460e; }
.editor-final-message h3 { margin-top:11px; font-size:29px; line-height:.99; letter-spacing:-.052em; }
.editor-final-message h3 em { color:#e65117; }
.editor-final-message > p { margin-top:12px; color:#6f6760; font-size:11px; line-height:1.48; }
.editor-final-message ul { margin:17px 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:8px; list-style:none; }
.editor-final-message li { min-height:49px; padding:9px; border:1px solid rgba(43,31,24,.07); border-radius:15px; display:flex; align-items:flex-start; gap:7px; color:#5d554f; background:rgba(255,255,255,.62); font-size:8px; line-height:1.35; }
.editor-final-message li svg { width:14px; height:14px; flex:0 0 auto; color:#e45117; }
.editor-conversion-cta { margin-top:13px; }

@media (max-width:370px) {
  .editor-story-frame { height:520px; }
  .manual-workbench { min-height:214px; }
  .manual-workbench .manual-controls label { grid-template-columns:72px 25px 1fr; }
  .editor-handoff-layer { padding:24px; }
  .editor-handoff-layer strong { font-size:33px; }
  .analysis-story-copy strong { font-size:27px; }
  .editor-final-message { padding:20px 16px; }
  .editor-final-message h3 { font-size:27px; }
}

@media (prefers-reduced-motion:reduce) {
  .editor-static-flow { margin-top:14px; padding:12px; border:1px solid rgba(43,31,24,.075); border-radius:20px; display:grid; grid-template-columns:1fr 16px 1fr 16px 1fr; align-items:center; gap:4px; background:rgba(255,255,255,.7); }
  .editor-static-flow > span { min-width:0; }
  .editor-static-flow b,.editor-static-flow small { display:block; }
  .editor-static-flow b { font-size:9px; }
  .editor-static-flow small { margin-top:4px; color:#777068; font-size:7px; line-height:1.3; }
  .editor-static-flow > svg { width:14px; height:14px; color:#e45218; }
  .editor-scene-choice .editor-result-variants figure,.editor-scene-iterate .editor-scene-photo,.manual-loop span { animation:none !important; }
  .editor-handoff-layer,.editor-result-proof,.editor-result-variants,.manual-controls i,.manual-controls i::after { transition:none !important; }
}

/* Audit action pass: shorter narrative, one CTA system, clearer product model. */
.landing-sticky-cta,
.gallery-chapter:not(.gallery-chapter-compact),
.testimonial-chapter,
.product-journey,
.free-trial-v3 { display:none !important; }

.editor-story-section { padding-top:60px; padding-bottom:56px; }
.editor-story-section > .subtitle { max-width:335px; }
.editor-assistant-story { margin-top:23px; }
.editor-story-frame { height:452px; }

/* Screenshot replacement: only the visible editor story is swapped; its continuation stays intact. */
.editor-story-section-replaced {
  padding-top:0;
  background:#fbf6f1;
}
.editor-story-section-replaced::after { display:none; }
.editor-screen-replacement {
  width:auto;
  margin:0 -20px;
  position:relative;
  z-index:1;
}
.editor-story-section-replaced > .editor-final-message { margin-top:26px; }
.manual-workbench { min-height:198px; }
.manual-loop { display:none; }
.editor-scene-status { min-height:82px; padding:11px 12px; }
.editor-scene-status p { margin-top:4px; }
.editor-final-message.editor-final-compact { margin-top:18px; padding:17px 16px 18px; }
.editor-final-message.editor-final-compact h3 { margin-top:9px; font-size:27px; }
.editor-conversion-cta { margin-top:11px; }

.smart-fix-merged { padding-top:68px; padding-bottom:68px; }
.smart-fix-merged .chapter-copy h2 em { color:#ff7b3d; }
.smart-fix-merged .analysis-product { height:390px; margin-top:24px; }
.smart-fix-merged .analysis-product::after { inset:32% 0 0; }
.smart-fix-merged .analysis-point { min-height:31px; padding:0 9px; font-size:9px; }
.smart-fix-merged .analysis-result { left:14px; right:14px; bottom:14px; padding:13px; }
.smart-fix-merged .analysis-result strong { font-size:16px; }
.analysis-bridge { min-height:60px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; color:#ff9561; }
.analysis-bridge > span { width:31px; height:31px; border:1px solid rgba(255,255,255,.13); border-radius:50%; display:grid; place-items:center; background:rgba(255,255,255,.05); transform:rotate(90deg); }
.analysis-bridge svg { width:15px; height:15px; }
.analysis-bridge small { color:rgba(255,255,255,.46); font-size:8px; font-weight:760; letter-spacing:.09em; text-transform:uppercase; }
.merged-smart-proof { overflow:hidden; border:1px solid rgba(255,255,255,.11); border-radius:28px; background:#26211d; box-shadow:0 24px 60px rgba(0,0,0,.22); }
.merged-smart-compare { aspect-ratio:4/4.55; border-radius:0 !important; box-shadow:none !important; }
.merged-smart-caption { min-height:116px; padding:15px; display:grid; grid-template-columns:42px 1fr; align-items:start; gap:11px; }
.merged-ready { width:42px; height:42px; border-radius:14px; display:grid; place-items:center; color:white; background:linear-gradient(145deg,#f4783e,#d9460e); box-shadow:0 8px 18px rgba(196,58,9,.28); }
.merged-ready svg { width:18px; height:18px; }
.merged-smart-caption small { color:#ff9d6d; font-size:8px; font-weight:800; letter-spacing:.11em; }
.merged-smart-caption h3 { margin-top:5px; font-size:18px; line-height:1.08; letter-spacing:-.035em; }
.merged-smart-caption p { margin-top:7px; color:rgba(255,255,255,.52); font-size:9px; line-height:1.42; }

.gallery-chapter.gallery-chapter-compact { padding:64px 20px 60px; background:linear-gradient(180deg,#fbfaf7,#f6f1eb); }
.gallery-chapter-compact .gallery-ribbon { margin-top:21px; gap:9px; }
.gallery-chapter-compact .gallery-card { flex:0 0 55%; height:250px; border-radius:22px; }
.gallery-chapter-compact .gallery-card b { font-size:18px; }
.gallery-chapter-compact .gallery-card span { font-size:9px; }

.choice-chapter { padding-top:68px; padding-bottom:68px; }
.choice-chapter > .subtitle { max-width:330px; }
.landing-v3 [data-filter="night"] img { filter:saturate(.84) contrast(1.16) brightness(.98); }

/* Keep the original landing portrait and its processing-only comparison. */
.landing-v3 .hero-proof > img { object-position:50% 43%; }

/* Hero product choice: mobile-first, photo-led, and stable between both modes. */
.landing-v3 .landing-hero-v3 { padding-top:22px; padding-bottom:28px; }
.landing-v3 .landing-hero-v3 h1 { margin-top:14px; }
.landing-v3 .landing-hero-v3 .hero-copy { margin-top:13px; max-width:365px; }
.landing-v3 .hero-product-switch {
  margin-top:15px;
  padding:4px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px;
  border:1px solid rgba(55,39,29,.085);
  border-radius:17px;
  background:rgba(235,229,222,.68);
  box-shadow:inset 0 1px rgba(255,255,255,.75);
  animation:hero-item-in var(--motion-story) var(--ease-out) 120ms both;
}
.landing-v3 .hero-product-switch button {
  min-height:54px;
  padding:6px 9px;
  border:0;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  color:#716960;
  background:transparent;
  text-align:left;
  cursor:pointer;
  transition:color 180ms var(--ease-out),background 220ms var(--ease-out),box-shadow 220ms ease,transform 120ms var(--ease-spring);
}
.landing-v3 .hero-product-switch button svg { width:17px; height:17px; }
.landing-v3 .hero-product-switch .hero-wand-icon {
  width:17px;
  height:17px;
  flex:0 0 17px;
  display:block;
  background:currentColor;
  -webkit-mask:url('/assets/icon-magic-wand.png') center / contain no-repeat;
  mask:url('/assets/icon-magic-wand.png') center / contain no-repeat;
  transform:rotate(-45deg);
  transform-origin:center;
}
.landing-v3 .hero-product-switch button > span { min-width:0; display:grid; gap:1px; }
.landing-v3 .hero-product-switch button b { font-size:10.5px; font-weight:750; line-height:1.2; white-space:nowrap; }
.landing-v3 .hero-product-switch button small { color:#91877e; font-size:7.8px; font-weight:560; line-height:1.2; white-space:nowrap; }
.landing-v3 .hero-product-switch button.is-active small { color:#9d623f; }
.landing-v3 .hero-product-switch button.is-active {
  color:#d7470f;
  background:#fffdfb;
  box-shadow:0 5px 15px rgba(57,39,28,.085),inset 0 1px #fff;
}
.landing-v3 .hero-product-switch button:active { transform:scale(.975); }
.landing-v3 .hero-showcase {
  margin-top:12px;
  height:clamp(246px,calc((100vw - 40px) * .75),293px);
  min-height:0;
  overflow:hidden;
  border-radius:var(--radius-hero);
  display:grid;
  animation:hero-item-in var(--motion-story) var(--ease-out) 175ms both;
}
.landing-v3 .landing-hero-v3[data-hero-product-mode="improve"] .hero-showcase {
  height:clamp(306px,calc((100vw - 32px) * 1.02),372px);
}
.landing-v3 .landing-hero-v3[data-hero-product-mode="photoshoot"] .hero-showcase {
  height:clamp(346px,calc((100vw - 32px) * 1.02 + 40px),412px);
}
.landing-v3 .hero-product-pane {
  grid-area:1 / 1;
  min-width:0;
  min-height:0;
  height:100%;
  overflow:hidden;
  border-radius:var(--radius-hero);
  opacity:0;
  transform:translateY(8px) scale(.985);
  pointer-events:none;
  transition:opacity 280ms var(--ease-out),transform 360ms var(--ease-spring);
}
.landing-v3 .hero-product-pane.is-active { opacity:1; transform:none; pointer-events:auto; }
.landing-v3 .hero-product-pane .hero-proof { height:100% !important; min-height:0; aspect-ratio:auto !important; }
.landing-v3 .hero-product-pane .hero-proof > img { object-position:50% 37%; }
.landing-v3 .hero-product-pane[data-hero-pane="improve"] {
  padding:8px 14px;
  display:grid;
  place-items:center;
  border:1px solid rgba(65,48,37,.08);
  background:linear-gradient(145deg,#fffaf6 0%,#f4e9e1 100%);
  box-shadow:0 18px 44px rgba(42,29,20,.1),inset 0 1px rgba(255,255,255,.88);
}
.landing-v3 .hero-improve-card {
  width:100%;
  max-width:300px;
  height:100%;
  position:relative;
  overflow:hidden;
  border:1.5px solid rgba(255,255,255,.94);
  border-radius:22px;
  background:#d5c7bd;
  box-shadow:0 16px 34px rgba(42,29,20,.17);
  transform:translateZ(0);
}
.landing-v3 .hero-improve-card .hero-proof {
  border:0;
  border-radius:inherit;
  box-shadow:none;
}
.landing-v3 .hero-photoshoot-demo {
  height:100%;
  min-height:0;
  padding:8px 8px 5px;
  display:grid;
  grid-template-rows:minmax(0,1fr) 40px;
  gap:2px;
  overflow:hidden;
  border-radius:var(--radius-hero);
  border:1px solid rgba(65,48,37,.08);
  background:linear-gradient(145deg,#fffaf6 0%,#f4e9e1 100%);
  box-shadow:0 18px 44px rgba(42,29,20,.1),inset 0 1px rgba(255,255,255,.88);
}
.landing-v3 .hero-photoshoot-story { min-height:0; display:grid; place-items:center; padding:0 6px; position:relative; }
.landing-v3 .hero-photoshoot-stack {
  --hero-photoshoot-card-radius:22px;
  --hero-photoshoot-card-border:1.5px solid rgba(255,255,255,.94);
  --hero-photoshoot-card-shadow:0 16px 34px rgba(42,29,20,.17);
  width:100%;
  max-width:305px;
  height:100%;
  min-width:0;
  min-height:0;
  position:relative;
  perspective:900px;
  overscroll-behavior-x:none;
  grid-area:1 / 1;
  transition:opacity 190ms ease,transform 230ms cubic-bezier(.22,1,.36,1);
}
.landing-v3 .hero-photoshoot-catalog {
  width:100%;
  max-width:305px;
  height:100%;
  min-width:0;
  min-height:0;
  grid-area:1 / 1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:6px;
  opacity:0;
  transform:translate3d(0,5px,0) scale(.985);
  pointer-events:none;
  transition:opacity 190ms ease,transform 230ms cubic-bezier(.22,1,.36,1);
}
.landing-v3 .hero-photoshoot-catalog-item {
  min-width:0;
  min-height:0;
  padding:0;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.92);
  border-radius:14px;
  background:#d5c7bd;
  box-shadow:0 7px 18px rgba(42,29,20,.11);
  text-align:left;
  isolation:isolate;
  -webkit-tap-highlight-color:transparent;
}
.landing-v3 .hero-photoshoot-catalog-item::after { content:""; position:absolute; inset:38% 0 0; z-index:1; background:linear-gradient(180deg,transparent,rgba(18,13,10,.72)); pointer-events:none; }
.landing-v3 .hero-photoshoot-catalog-item img { width:100%; height:100%; display:block; object-fit:cover; object-position:50% 32%; transform:scale(1.01); transition:transform 220ms cubic-bezier(.22,1,.36,1); }
.landing-v3 .hero-photoshoot-catalog-item > span { min-width:0; position:absolute; z-index:2; right:7px; bottom:6px; left:7px; color:#fff; }
.landing-v3 .hero-photoshoot-catalog-item b,.landing-v3 .hero-photoshoot-catalog-item small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.landing-v3 .hero-photoshoot-catalog-item b { font-size:9px; line-height:1.08; }
.landing-v3 .hero-photoshoot-catalog-item small { margin-top:1px; color:rgba(255,255,255,.74); font-size:6.5px; line-height:1.1; }
.landing-v3 .hero-photoshoot-catalog-item:active img { transform:scale(1.045); }
.landing-v3 .hero-photoshoot-catalog-item:focus-visible { outline:2px solid rgba(220,69,14,.72); outline-offset:1px; }
.landing-v3 .hero-photoshoot-demo[data-hero-photoshoot-display="catalog"] .hero-photoshoot-stack { opacity:0; transform:translate3d(0,-4px,0) scale(.985); pointer-events:none; }
.landing-v3 .hero-photoshoot-demo[data-hero-photoshoot-display="catalog"] .hero-photoshoot-catalog { opacity:1; transform:none; pointer-events:auto; }
.landing-v3 .hero-photoshoot-card {
  width:calc(100% - 5px);
  height:calc(100% - 2px);
  min-width:0;
  min-height:0;
  box-sizing:border-box;
  position:absolute;
  top:1px;
  left:0;
  overflow:hidden;
  border:var(--hero-photoshoot-card-border);
  border-radius:var(--hero-photoshoot-card-radius);
  background:#d5c7bd;
  box-shadow:var(--hero-photoshoot-card-shadow);
  transform-origin:50% 94%;
  transition:transform 380ms cubic-bezier(.16,1,.3,1),opacity 260ms var(--ease-out);
  will-change:transform,opacity;
  backface-visibility:hidden;
  -webkit-transform:translateZ(0);
  contain:layout paint;
}
.landing-v3 .hero-photoshoot-card.is-third { z-index:1; transform:translate3d(var(--third-x,8px),var(--third-y,10px),-20px) scale(var(--third-scale,.925)); opacity:var(--third-opacity,.46); }
.landing-v3 .hero-photoshoot-card.is-next { z-index:2; transform:translate3d(var(--next-x,4px),var(--next-y,8px),var(--next-z,-10px)) scale(var(--next-scale,.96)); opacity:var(--next-opacity,.7); }
.landing-v3 .hero-photoshoot-stack.is-dragging .hero-photoshoot-card.is-next,.landing-v3 .hero-photoshoot-stack.is-dragging .hero-photoshoot-card.is-third { transition:none; }
.landing-v3 .hero-photoshoot-card.is-front { z-index:3; cursor:grab; touch-action:pan-y; user-select:none; -webkit-user-select:none; animation:hero-card-deal 440ms cubic-bezier(.16,1,.3,1) both; }
.landing-v3 .hero-photoshoot-card.is-front.is-promoted { animation:none; }
.landing-v3 .hero-photoshoot-card.is-front:focus-visible { outline:2px solid rgba(220,69,14,.62); outline-offset:2px; }
.landing-v3 .hero-photoshoot-card.is-front.is-dragging { cursor:grabbing; transition:none; box-shadow:0 20px 42px rgba(42,29,20,.22); }
.landing-v3 .hero-photoshoot-card.is-front.is-returning { transition:transform 420ms cubic-bezier(.2,.92,.24,1.16); }
.landing-v3 .hero-photoshoot-card.is-front.is-liked,.landing-v3 .hero-photoshoot-card.is-front.is-passed { transform:translate3d(var(--exit-x),var(--exit-y),0) rotate(var(--exit-rotate)) !important; opacity:0; transition:transform var(--swipe-duration,320ms) cubic-bezier(.18,.72,.18,1),opacity var(--swipe-duration,320ms) cubic-bezier(.3,0,.7,1); }
.landing-v3 .hero-card-photo-stage { width:100%; height:100%; position:absolute; inset:0; overflow:hidden; background:#d8cec6; pointer-events:none; }
.landing-v3 .hero-card-photo { width:100%; height:100%; display:block; position:absolute; inset:0; object-fit:cover; object-position:50% 32%; opacity:1; transform:translate3d(var(--photo-shift,0),0,0) scale(1.008); transition:opacity 220ms var(--ease-out),transform 380ms cubic-bezier(.16,1,.3,1); will-change:transform; -webkit-user-drag:none; }
.landing-v3 .hero-photoshoot-card.has-image-fallback .hero-card-photo { object-position:50% 37%; }
.landing-v3 .hero-photoshoot-controls { min-width:0; display:grid; grid-template-columns:44px minmax(0,1fr) 44px; align-items:center; gap:5px; padding:0 7px; }
.landing-v3 .hero-deck-control { width:40px; height:40px; padding:0; position:relative; border:1px solid rgba(67,49,38,.1); border-radius:50%; display:grid; place-items:center; color:#73675f; background:rgba(255,255,255,.78); box-shadow:0 5px 14px rgba(48,31,21,.08),inset 0 1px rgba(255,255,255,.9); transition:color 160ms ease,background 160ms ease,transform 160ms cubic-bezier(.2,.8,.2,1),box-shadow 160ms ease; -webkit-tap-highlight-color:transparent; }
.landing-v3 .hero-deck-control::before { content:""; position:absolute; inset:-2px; border-radius:inherit; }
.landing-v3 .hero-deck-control.is-like { justify-self:end; color:#c94b1a; background:rgba(255,247,242,.9); }
.landing-v3 .hero-deck-control svg { width:17px; height:17px; stroke-width:2.2; }
.landing-v3 .hero-deck-control:active { transform:scale(.92); box-shadow:0 2px 8px rgba(48,31,21,.07); }
.landing-v3 .hero-deck-control:focus-visible { outline:2px solid rgba(216,72,16,.62); outline-offset:2px; }
.landing-v3 .hero-photoshoot-demo[data-hero-photoshoot-display="catalog"] .hero-deck-control { opacity:0; pointer-events:none; transform:scale(.88); }
.landing-v3 .hero-photoshoot-card footer { width:100%; box-sizing:border-box; position:absolute; left:0; right:0; bottom:0; min-height:48px; padding:13px 11px 8px; display:flex; align-items:flex-end; justify-content:space-between; gap:8px; color:#fff; background:linear-gradient(180deg,transparent,rgba(18,13,10,.8) 58%); }
.landing-v3 .hero-photoshoot-card:not(.is-front) footer { opacity:0; transform:translate3d(0,4px,0); }
.landing-v3 .hero-photoshoot-card.is-next footer { opacity:var(--next-content-opacity,0); transform:translate3d(0,var(--next-content-y,4px),0); transition:transform 260ms cubic-bezier(.22,1,.36,1),opacity 180ms ease-out; }
.landing-v3 .hero-photoshoot-card.is-front footer { opacity:1; transform:translate3d(0,0,0); transition:transform 220ms cubic-bezier(.22,1,.36,1),opacity 160ms ease-out; }
.landing-v3 .hero-photoshoot-card footer span { min-width:0; }
.landing-v3 .hero-photoshoot-card footer b,.landing-v3 .hero-photoshoot-card footer small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.landing-v3 .hero-photoshoot-card footer b { font-size:13px; line-height:1.05; }
.landing-v3 .hero-photoshoot-card footer small { margin-top:2px; color:rgba(255,255,255,.72); font-size:7.5px; }
.landing-v3 .hero-photoshoot-card footer strong { flex:0 0 auto; font-size:8px; }
.landing-v3 .hero-card-decision { position:absolute; z-index:8; top:14px; padding:7px 9px; border:1.5px solid currentColor; border-radius:10px; display:flex; align-items:center; gap:4px; background:rgba(255,255,255,.92); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); box-shadow:0 6px 18px rgba(26,18,13,.12); font-size:8px; font-weight:790; letter-spacing:.01em; opacity:0; transition:opacity 100ms linear,transform 120ms ease; pointer-events:none; }
.landing-v3 .hero-card-decision i { width:12px; height:12px; display:grid; place-items:center; }
.landing-v3 .hero-card-decision svg { width:12px; height:12px; stroke-width:2.25; }
.landing-v3 .hero-card-decision b { font:inherit; white-space:nowrap; }
.landing-v3 .hero-card-decision.is-pass { left:10px; color:#76564d; transform:rotate(-4deg) scale(var(--decision-scale,.92)); }
.landing-v3 .hero-card-decision.is-like { right:10px; color:#dc4910; transform:rotate(4deg) scale(var(--decision-scale,.92)); }
.landing-v3 .decision-broken-heart { position:relative; opacity:.82; }
.landing-v3 .decision-broken-heart::after { content:""; width:1.5px; height:13px; position:absolute; left:5px; top:-1px; border-radius:2px; background:currentColor; transform:rotate(28deg); box-shadow:2px 3px 0 -0.4px currentColor; }
.landing-v3 .hero-photoshoot-view-switch { min-width:0; height:28px; padding:2px; display:grid; grid-template-columns:1fr 1fr; gap:2px; border:1px solid rgba(73,53,41,.08); border-radius:999px; background:rgba(228,217,208,.7); box-shadow:inset 0 1px 2px rgba(53,35,24,.04); }
.landing-v3 .hero-photoshoot-view-switch button { min-width:0; padding:0 8px; border:0; border-radius:999px; display:flex; align-items:center; justify-content:center; gap:4px; color:#82756c; background:transparent; font-family:inherit; font-size:8px; font-weight:700; line-height:1; white-space:nowrap; transition:color 170ms ease,background 170ms ease,box-shadow 170ms ease,transform 170ms cubic-bezier(.22,1,.36,1); -webkit-tap-highlight-color:transparent; }
.landing-v3 .hero-photoshoot-view-switch button span { color:#bf5b35; font-size:10px; line-height:1; }
.landing-v3 .hero-photoshoot-view-switch button.is-active { color:#3f3731; background:rgba(255,255,255,.92); box-shadow:0 2px 7px rgba(54,35,23,.09),inset 0 1px rgba(255,255,255,.92); }
.landing-v3 .hero-photoshoot-view-switch button:active { transform:scale(.96); }
.landing-v3 .hero-photoshoot-view-switch button:focus-visible { outline:2px solid rgba(216,72,16,.62); outline-offset:1px; }
@keyframes hero-card-deal { 0% { opacity:.62; transform:translate3d(5px,10px,0) scale(.94); } 72% { opacity:1; transform:translate3d(-1px,-1px,0) scale(1.006); } 100% { opacity:1; transform:none; } }
.landing-v3 .hero-action-stage { margin-top:12px; display:grid; animation:hero-item-in var(--motion-story) var(--ease-out) 225ms both; }
.landing-v3 .hero-mode-action { grid-area:1 / 1; opacity:0; transform:translateY(6px); pointer-events:none; transition:opacity 220ms var(--ease-out),transform 280ms var(--ease-spring); }
.landing-v3 .hero-mode-action.is-active { opacity:1; transform:none; pointer-events:auto; }
.landing-v3 .hero-mode-note { min-height:34px; margin:0 3px 9px; display:flex; align-items:center; gap:9px; }
.landing-v3 .hero-mode-note > span { width:31px; height:31px; flex:0 0 auto; border-radius:10px; display:grid; place-items:center; color:#d84910; background:#ffede2; }
.landing-v3 .hero-mode-note > span svg { width:15px; height:15px; }
.landing-v3 .hero-mode-note.is-photoshoot-choice > span { width:31px; height:31px; border-radius:10px; color:#e34a10; background:linear-gradient(145deg,#fff8f4,#ffe8dc); box-shadow:inset 0 0 0 1px rgba(225,83,24,.11), 0 4px 10px rgba(225,83,24,.06); }
.landing-v3 .hero-mode-note.is-photoshoot-choice > span .choice-switch { width:19px; height:19px; overflow:visible; stroke:currentColor; stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round; }
.landing-v3 .hero-mode-note > div { min-width:0; }
.landing-v3 .hero-mode-note b { display:block; color:#3c3530; font-size:10.5px; line-height:1.3; }
.landing-v3 .hero-trust-note { margin-top:11px; display:flex; align-items:center; justify-content:center; gap:8px; color:#5d554e; animation:hero-item-in var(--motion-story) var(--ease-out) 275ms both; }
.landing-v3 .hero-trust-note > svg { width:17px; height:17px; color:var(--success); }
.landing-v3 .hero-trust-note span { display:flex; align-items:baseline; gap:6px; }
.landing-v3 .hero-trust-note b { font-size:10.5px; }
.landing-v3 .hero-trust-note small { color:#8a8179; font-size:9px; }

@media (max-width:370px) {
  .landing-v3 .hero-product-switch button { padding:6px 7px; gap:5px; }
  .landing-v3 .hero-product-switch button b { font-size:9.7px; }
  .landing-v3 .hero-product-switch button small { font-size:7.2px; }
  .landing-v3 .hero-showcase { height:246px; }
  .landing-v3 .hero-photoshoot-story { padding:0 4px; }
  .landing-v3 .hero-photoshoot-controls { padding-inline:3px; gap:3px; }
  .landing-v3 .hero-photoshoot-catalog { gap:4px; }
  .landing-v3 .hero-photoshoot-view-switch button { padding-inline:5px; font-size:7.5px; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .hero-product-switch,.landing-v3 .hero-showcase,.landing-v3 .hero-action-stage,.landing-v3 .hero-trust-note { animation:none !important; }
  .landing-v3 .hero-product-pane,.landing-v3 .hero-mode-action,.landing-v3 .hero-card-photo,.landing-v3 .hero-photoshoot-card footer,.landing-v3 .hero-photoshoot-stack,.landing-v3 .hero-photoshoot-catalog,.landing-v3 .hero-photoshoot-view-switch button { transition:none !important; animation:none !important; }
  .landing-v3 .hero-photoshoot-card { animation:none !important; transition:transform 150ms ease-out,opacity 120ms ease-out !important; }
  .landing-v3 .hero-card-decision { transition:opacity 80ms linear !important; }
}

.compact-how { padding:66px 20px; background:linear-gradient(180deg,#fffdfa,#f7eee7); }
.compact-how h2 em { color:#df4b11; }
.compact-how ol { margin:27px 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:9px; list-style:none; }
.compact-how li { min-height:148px; padding:14px; border:1px solid rgba(45,32,24,.075); border-radius:21px; position:relative; display:flex; flex-direction:column; align-items:flex-start; background:rgba(255,255,255,.7); box-shadow:0 10px 28px rgba(66,40,24,.045),inset 0 1px rgba(255,255,255,.9); }
.compact-how li > span { position:absolute; top:13px; right:13px; color:#d84a12; font-size:9px; font-weight:800; }
.compact-how li > svg { width:37px; height:37px; padding:9px; border-radius:13px; color:#dc4a11; background:#fff0e7; }
.compact-how li div { margin-top:auto; padding-top:16px; }
.compact-how b,.compact-how small { display:block; }
.compact-how b { font-size:13px; line-height:1.17; }
.compact-how small { margin-top:5px; color:#777068; font-size:9px; line-height:1.38; }

.mode-split-section { padding:68px 20px; background:#fbf8f4; }
.mode-split-section > p { margin-top:14px; color:#716a63; font-size:13px; line-height:1.48; }
.mode-split-section h2 em { color:#de4a10; }
.mode-split-grid { margin-top:25px; display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.mode-split-grid article { min-height:236px; padding:15px; border-radius:24px; display:flex; flex-direction:column; align-items:flex-start; }
.mode-split-grid article > span { width:42px; height:42px; border-radius:14px; display:grid; place-items:center; }
.mode-split-grid article > span svg { width:19px; height:19px; }
.mode-split-grid small { margin-top:auto; padding-top:27px; font-size:8px; font-weight:800; letter-spacing:.1em; }
.mode-split-grid h3 { margin-top:7px; font-size:21px; line-height:1.04; letter-spacing:-.045em; }
.mode-split-grid p { margin-top:9px; font-size:9px; line-height:1.45; }
.mode-improve { border:1px solid rgba(222,76,17,.12); color:#28211d; background:linear-gradient(150deg,#fff,#fff1e8); }
.mode-improve > span { color:#d84910; background:#fff0e7; }
.mode-improve small { color:#d84910; }
.mode-improve p { color:#716962; }
.mode-change { color:white; background:radial-gradient(circle at 90% 8%,rgba(242,118,61,.24),transparent 35%),#211c18; box-shadow:0 18px 42px rgba(38,26,19,.14); }
.mode-change > span { color:#ff9b68; background:rgba(255,255,255,.08); }
.mode-change small { color:#ff9b68; }
.mode-change p { color:rgba(255,255,255,.55); }

.photoshoot-chapter { padding-top:68px; padding-bottom:66px; }
.photoshoot-story { margin-top:25px; }
.photoshoot-results article { height:315px; }

.landing-pricing { padding-top:68px; padding-bottom:68px; }
.landing-pricing .free-plan { margin-top:24px; }
.credit-explainer small { line-height:1.4; }
.paid-plans { margin:12px 0 0; padding:0; display:grid; gap:10px; overflow:visible; scroll-snap-type:none; }
.paid-plans .paid-plan { width:100%; min-height:0; padding:17px; display:none; transform:none; }
.paid-plans.pricing-mode-packs [data-plan-model="packs"],
.paid-plans.pricing-mode-subscription [data-plan-model="subscription"] { display:block; }
.paid-plan.is-selected { transform:none; }
.paid-plan .plan-fit { min-height:0; max-width:none; }
.paid-plan .plan-price { margin-top:16px; }
.paid-plan ul { min-height:0; margin-top:15px; }
.paid-plan button { margin-top:15px; }
.pricing-reassurance { grid-template-columns:40px 1fr; }
.pricing-reassurance button { display:none; }

.landing-faq { padding-top:68px; padding-bottom:68px; }

@media (max-width:370px) {
  .editor-story-frame { height:438px; }
  .manual-workbench { min-height:190px; padding:12px; }
  .editor-scene-status { grid-template-columns:72px 1fr; }
  .smart-fix-merged .analysis-product { height:370px; }
  .merged-smart-caption { padding:13px; grid-template-columns:38px 1fr; }
  .merged-ready { width:38px; height:38px; }
  .gallery-chapter-compact .gallery-card { flex-basis:57%; height:238px; }
  .compact-how li { min-height:145px; padding:12px; }
  .mode-split-grid { grid-template-columns:1fr; }
  .mode-split-grid article { min-height:190px; }
  .mode-split-grid small { padding-top:21px; }
}

@media (prefers-reduced-motion:reduce) {
  .merged-smart-compare { transition:none !important; }
  .compact-how *, .mode-split-section * { animation:none !important; transition:none !important; }
}

/* Premium CTA, iconography and pricing selection pass. */
.landing-v3 {
  --cta-accent:#d6420a;
  --cta-accent-hover:#cf3e08;
  --cta-accent-pressed:#b93205;
  --cta-tint:#fff1e8;
  --cta-tint-strong:#ffe6d8;
  --cta-focus:rgba(214,66,10,.28);
  --cta-ease:cubic-bezier(.2,.82,.3,1);
  --cta-shadow:0 13px 28px rgba(151,45,8,.22),0 2px 5px rgba(101,29,5,.12),inset 0 1px rgba(255,255,255,.22);
  --cta-shadow-hover:0 17px 34px rgba(151,45,8,.27),0 3px 7px rgba(101,29,5,.13),inset 0 1px rgba(255,255,255,.24);
}

.landing-v3 svg {
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.landing-v3 .brand-mark svg { stroke-width:2.3; }
.landing-v3 :is(button,summary,[tabindex]):focus-visible {
  outline:3px solid var(--cta-focus);
  outline-offset:3px;
}

.landing-v3 .primary-button,
.landing-v3 .editor-conversion-cta {
  border-color:rgba(255,255,255,.16);
  color:#fff;
  background:linear-gradient(145deg,var(--cta-accent),#c93a08);
  box-shadow:var(--cta-shadow);
  filter:none;
  transition:transform 180ms var(--cta-ease),box-shadow 180ms ease,background 180ms ease,filter 180ms ease;
}
.landing-v3 .signature-cta {
  min-height:58px;
  padding:7px 9px;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:grid;
  grid-template-columns:36px minmax(0,1fr) 36px;
  align-items:center;
  gap:9px;
  text-align:center;
}
.landing-v3 .signature-cta::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:1px 8px auto;
  height:42%;
  border-radius:14px 14px 50% 50%;
  background:linear-gradient(180deg,rgba(255,255,255,.11),transparent);
  pointer-events:none;
}
.landing-v3 .cta-label {
  min-width:0;
  overflow:hidden;
  font-size:14px;
  font-weight:730;
  letter-spacing:-.018em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.landing-v3 .cta-leading,
.landing-v3 .cta-trailing {
  width:36px;
  height:36px;
  border-radius:13px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.11);
  box-shadow:inset 0 1px rgba(255,255,255,.12);
}
.landing-v3 .cta-trailing { border-radius:50%; }
.landing-v3 .cta-leading svg,
.landing-v3 .cta-trailing svg { width:17px; height:17px; }
.landing-v3 .cta-trailing {
  transition:transform 180ms var(--cta-ease),background 180ms ease;
}

@media (hover:hover) {
  .landing-v3 .primary-button:hover,
  .landing-v3 .editor-conversion-cta:hover {
    background:linear-gradient(145deg,var(--cta-accent-hover),#c13706);
    box-shadow:var(--cta-shadow-hover);
    filter:none;
    transform:translateY(-2px);
  }
  .landing-v3 .signature-cta:hover .cta-trailing { transform:translateX(2px); background:rgba(255,255,255,.17); }
}
.landing-v3 .primary-button:active,
.landing-v3 .editor-conversion-cta:active {
  background:linear-gradient(145deg,var(--cta-accent-pressed),#a82c03);
  box-shadow:0 5px 13px rgba(134,37,4,.19),inset 0 1px rgba(255,255,255,.14);
  transform:translateY(1px) scale(.984);
}
.landing-v3 .signature-cta:active .cta-trailing { transform:translateX(2px) scale(.94); }
.landing-v3 .signature-cta:is(.is-loading,[aria-busy="true"]) {
  color:transparent;
  pointer-events:none;
}
.landing-v3 .signature-cta:is(.is-loading,[aria-busy="true"]) > * { opacity:0; }
.landing-v3 .signature-cta:is(.is-loading,[aria-busy="true"])::after {
  content:"";
  width:20px;
  height:20px;
  border:2px solid rgba(255,255,255,.42);
  border-top-color:#fff;
  border-radius:50%;
  position:absolute;
  left:50%;
  top:50%;
  animation:premium-button-spin 700ms linear infinite;
  transform:translate(-50%,-50%);
}
@keyframes premium-button-spin { to { transform:translate(-50%,-50%) rotate(360deg); } }
.landing-final-v3 .signature-cta:is(.is-loading,[aria-busy="true"])::after { border-color:rgba(214,66,10,.25); border-top-color:var(--cta-accent); }
.landing-v3 :is(.primary-button,.secondary-cta,.light-cta,.header-try,.paid-plan button):is(:disabled,[aria-disabled="true"]) {
  opacity:.46;
  cursor:not-allowed;
  filter:saturate(.35);
  box-shadow:none;
  transform:none;
}

.landing-v3 .header-try {
  background:linear-gradient(145deg,var(--cta-accent),#c93a08);
  box-shadow:0 7px 17px rgba(151,45,8,.18),inset 0 1px rgba(255,255,255,.2);
  transition:width var(--motion-normal) var(--ease-out),padding var(--motion-normal) var(--ease-out),opacity var(--motion-fast) ease,transform 160ms var(--cta-ease),box-shadow 160ms ease,background 160ms ease;
}
@media (hover:hover) {
  .landing-v3 .header-try:hover { background:linear-gradient(145deg,var(--cta-accent-hover),#bd3405); box-shadow:0 10px 22px rgba(151,45,8,.22),inset 0 1px rgba(255,255,255,.22); transform:translateY(-1px); }
  .landing-v3 .icon-button.compact:hover { border-color:rgba(214,66,10,.16); background:#fff; transform:translateY(-1px); box-shadow:0 9px 21px rgba(45,33,25,.09),inset 0 1px rgba(255,255,255,.9); }
}
.landing-v3 .header-try:active { background:var(--cta-accent-pressed); transform:translateY(1px) scale(.97); }

.landing-v3 .link-button {
  gap:7px;
  color:#3f3934;
}
.landing-v3 .link-button .link-icon {
  width:26px;
  height:26px;
  border:1px solid rgba(42,31,24,.09);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--cta-accent);
  background:rgba(255,255,255,.68);
  box-shadow:inset 0 1px rgba(255,255,255,.85);
  transition:transform 160ms var(--cta-ease),background 160ms ease,border-color 160ms ease;
}
.landing-v3 .link-button .link-icon svg { width:13px; height:13px; margin-left:1px; }
.landing-v3 .link-button::after { left:38px; }
@media (hover:hover) {
  .landing-v3 .link-button:hover .link-icon { border-color:rgba(214,66,10,.16); background:var(--cta-tint); transform:scale(1.05); }
}
.landing-v3 .link-button:active .link-icon { transform:scale(.92); }

.landing-v3 .light-cta.signature-cta {
  color:#28211d;
  background:linear-gradient(180deg,#fff,#f8f2ec);
  box-shadow:0 9px 22px rgba(12,9,7,.16),inset 0 1px rgba(255,255,255,.95);
}
.landing-v3 .light-cta .cta-leading,
.landing-v3 .light-cta .cta-trailing {
  color:var(--cta-accent);
  background:var(--cta-tint);
  box-shadow:inset 0 1px rgba(255,255,255,.9);
}
@media (hover:hover) {
  .landing-v3 .light-cta:hover { border-color:rgba(214,66,10,.18); background:#fff; box-shadow:0 13px 29px rgba(12,9,7,.2),inset 0 1px rgba(255,255,255,.95); transform:translateY(-2px); }
  .landing-v3 .light-cta:hover .cta-trailing { background:var(--cta-tint-strong); }
}
.landing-v3 .light-cta:active { background:#f3ebe4; transform:translateY(1px) scale(.985); }

.landing-final-v3 .primary-button.signature-cta {
  border-color:rgba(255,255,255,.72);
  color:#211b17;
  background:linear-gradient(180deg,#fff,#fff7f1);
  box-shadow:0 15px 34px rgba(0,0,0,.24),inset 0 1px #fff;
}
.landing-final-v3 .primary-button .cta-leading { color:var(--cta-accent); background:var(--cta-tint); }
.landing-final-v3 .primary-button .cta-trailing { color:#fff; background:linear-gradient(145deg,var(--cta-accent),#c93a08); box-shadow:0 6px 13px rgba(151,45,8,.2),inset 0 1px rgba(255,255,255,.2); }
@media (hover:hover) {
  .landing-final-v3 .primary-button.signature-cta:hover { color:#211b17; background:#fff; box-shadow:0 19px 40px rgba(0,0,0,.29),inset 0 1px #fff; }
  .landing-final-v3 .primary-button.signature-cta:hover .cta-trailing { background:linear-gradient(145deg,var(--cta-accent-hover),#bd3405); }
}
.landing-final-v3 .primary-button.signature-cta:active { color:#211b17; background:#f5eee8; box-shadow:0 7px 17px rgba(0,0,0,.2),inset 0 1px #fff; }

.landing-v3 :is(.choice-tabs,.pricing-model-tabs) button {
  transition:color 160ms ease,transform 160ms var(--cta-ease),background 160ms ease;
}
@media (hover:hover) {
  .landing-v3 :is(.choice-tabs,.pricing-model-tabs) button:hover { color:#27211d; }
  .landing-v3 .landing-result-tile:hover { border-color:rgba(255,255,255,.68); transform:translateY(-2px); box-shadow:0 14px 31px rgba(45,32,23,.12); }
  .landing-v3 .landing-swipe-actions button:hover { border-color:rgba(214,66,10,.15); transform:translateY(-1px); box-shadow:0 10px 22px rgba(43,31,23,.09),inset 0 1px rgba(255,255,255,.9); }
  .landing-v3 .faq-list summary:hover { background:rgba(255,250,247,.78); }
}
.landing-v3 :is(.choice-tabs,.pricing-model-tabs) button:active { transform:scale(.975); }
.landing-v3 .landing-result-tile:active { transform:scale(.985); }
.landing-v3 .faq-list summary { transition:background 160ms ease; }

.landing-v3 .landing-swipe-actions .demo-like::after {
  content:"";
  width:34px;
  height:34px;
  border:2px solid rgba(214,66,10,.48);
  border-radius:50%;
  opacity:0;
  transform:translate(-50%,-50%) scale(.45);
  text-shadow:none;
}
.landing-v3 .landing-swipe-actions .demo-like.pulse::after { animation:like-confirm-ring 500ms var(--cta-ease) both; }
.landing-v3 .landing-swipe-actions .demo-like.pulse > svg { animation:like-confirm-icon 420ms var(--cta-ease) both; }
@keyframes like-confirm-ring { 0% { opacity:.75; transform:translate(-50%,-50%) scale(.45); } 100% { opacity:0; transform:translate(-50%,-50%) scale(1.55); } }
@keyframes like-confirm-icon { 0%,100% { transform:none; } 45% { transform:scale(1.22); } }

.landing-v3 .paid-plan {
  border:1px solid rgba(42,31,24,.1);
  background:linear-gradient(155deg,#fff,#fbf8f4);
  box-shadow:0 8px 24px rgba(42,30,21,.045),inset 0 1px rgba(255,255,255,.94);
  transform:none;
  transition:transform 180ms var(--cta-ease),border-color 180ms ease,box-shadow 220ms ease,background 220ms ease;
}
.landing-v3 .paid-plan.featured {
  border-color:rgba(214,66,10,.19);
  box-shadow:0 11px 28px rgba(94,48,25,.065),inset 0 1px rgba(255,255,255,.94);
}
.landing-v3 .paid-plan.featured::before {
  inset:0 18px auto;
  height:2px;
  background:linear-gradient(90deg,rgba(214,66,10,.72),rgba(214,66,10,.12));
}
.landing-v3 .paid-plan.is-selected {
  border-color:rgba(214,66,10,.46);
  background:linear-gradient(155deg,#fff,#fff2e9);
  box-shadow:0 19px 42px rgba(111,51,22,.13),0 0 0 1px rgba(214,66,10,.07),inset 0 1px rgba(255,255,255,.98);
}
@media (hover:hover) {
  .landing-v3 .paid-plan:not(.is-selected):hover { border-color:rgba(214,66,10,.24); transform:translateY(-2px); box-shadow:0 14px 32px rgba(79,43,25,.09),inset 0 1px rgba(255,255,255,.96); }
  .landing-v3 .paid-plan.is-selected:hover { transform:translateY(-1px); box-shadow:0 22px 47px rgba(111,51,22,.15),0 0 0 1px rgba(214,66,10,.08),inset 0 1px rgba(255,255,255,.98); }
}
.landing-v3 .paid-plan:active { transform:scale(.993); }
.landing-v3 .plan-topline { min-height:30px; padding-right:0; align-items:center; }
.landing-v3 .plan-meta { min-width:0; display:flex; align-items:center; flex-wrap:wrap; gap:7px; }
.landing-v3 .plan-meta > small { color:#887f77; font-size:8px; font-weight:770; letter-spacing:.1em; }
.landing-v3 .plan-recommendation {
  min-height:22px;
  padding:0 8px;
  border:1px solid rgba(214,66,10,.13);
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  color:#b63a0b;
  background:#fff1e8;
  font-size:8px;
  font-weight:750;
  letter-spacing:.01em;
}
.landing-v3 .plan-selected-mark {
  min-width:75px;
  min-height:30px;
  margin-left:auto;
  padding:0 9px;
  border-color:rgba(214,66,10,.18);
  border-radius:11px;
  opacity:0;
  color:#fff;
  background:linear-gradient(145deg,var(--cta-accent),#c93a08);
  box-shadow:0 7px 15px rgba(151,45,8,.17),inset 0 1px rgba(255,255,255,.18);
  transform:scale(.84);
  transform-origin:right center;
  transition:opacity 170ms ease,transform 220ms var(--cta-ease),color 170ms ease,background 170ms ease,border-color 170ms ease;
}
.landing-v3 .plan-selected-mark svg { width:13px; height:13px; }
.landing-v3 .plan-selected-mark i { display:block; font-size:8px; font-weight:740; }
.landing-v3 .paid-plan.is-selected .plan-selected-mark {
  border-color:rgba(255,255,255,.16);
  opacity:1;
  color:#fff;
  background:linear-gradient(145deg,var(--cta-accent),#c93a08);
  transform:none;
}
.landing-v3 .paid-plan button {
  min-height:50px;
  padding:0 12px 0 16px;
  border:1px solid rgba(42,31,24,.12);
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#312a25;
  background:linear-gradient(180deg,#fff,#f5efe9);
  box-shadow:0 5px 14px rgba(45,32,23,.045),inset 0 1px rgba(255,255,255,.94);
  transition:transform 160ms var(--cta-ease),border-color 160ms ease,box-shadow 160ms ease,background 160ms ease;
}
.landing-v3 .plan-cta-arrow {
  width:29px;
  height:29px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#625a53;
  background:#ebe4dc;
  transition:transform 160ms var(--cta-ease),background 160ms ease;
}
.landing-v3 .plan-cta-arrow svg { width:15px; height:15px; }
@media (hover:hover) {
  .landing-v3 .paid-plan:not(.is-selected) button:hover { border-color:rgba(214,66,10,.21); background:#fff; box-shadow:0 8px 18px rgba(73,41,24,.07),inset 0 1px #fff; }
  .landing-v3 .paid-plan button:hover .plan-cta-arrow { transform:translateX(2px); background:#f0e4dc; }
}
.landing-v3 .paid-plan button:active { transform:translateY(1px) scale(.985); }
.landing-v3 .paid-plan.is-selected button,
.landing-v3 .paid-plan button.is-continue {
  border-color:rgba(255,255,255,.16);
  color:#fff;
  background:linear-gradient(145deg,var(--cta-accent),#c93a08);
  box-shadow:0 10px 23px rgba(151,45,8,.2),inset 0 1px rgba(255,255,255,.2);
}
.landing-v3 .paid-plan.is-selected .plan-cta-arrow,
.landing-v3 .paid-plan button.is-continue .plan-cta-arrow { color:#fff; background:rgba(255,255,255,.13); }
@media (hover:hover) {
  .landing-v3 .paid-plan.is-selected button:hover,
  .landing-v3 .paid-plan button.is-continue:hover { background:linear-gradient(145deg,var(--cta-accent-hover),#bd3405); box-shadow:0 13px 27px rgba(151,45,8,.24),inset 0 1px rgba(255,255,255,.22); }
  .landing-v3 .paid-plan.is-selected button:hover .plan-cta-arrow,
  .landing-v3 .paid-plan button.is-continue:hover .plan-cta-arrow { background:rgba(255,255,255,.18); }
}

@media (max-width:370px) {
  .landing-v3 .signature-cta { grid-template-columns:34px minmax(0,1fr) 34px; gap:7px; }
  .landing-v3 .cta-leading,.landing-v3 .cta-trailing { width:34px; height:34px; }
  .landing-v3 .cta-label { font-size:13px; }
  .landing-v3 .plan-selected-mark { min-width:69px; padding:0 7px; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .signature-cta,
  .landing-v3 .signature-cta *,
  .landing-v3 .header-try,
  .landing-v3 .paid-plan,
  .landing-v3 .paid-plan *,
  .landing-v3 .link-button *,
  .landing-v3 .landing-result-tile,
  .landing-v3 .landing-swipe-actions button { animation:none !important; transition:none !important; }
}

/* Premium CTA calm correction: removal, precision and one restrained response. */
.landing-v3 {
  --cta-accent:var(--orange-primary);
  --cta-accent-hover:var(--orange-hover);
  --cta-accent-pressed:var(--orange-pressed);
  --cta-tint:var(--orange-soft);
  --cta-focus:var(--orange-focus);
  --cta-ease:cubic-bezier(.22,.72,.26,1);
}

.landing-v3 :is(button,summary,[tabindex]):focus-visible {
  outline:2px solid var(--cta-focus);
  outline-offset:3px;
}

.landing-v3 .primary-button {
  min-height:54px;
  border:1px solid rgba(113,34,6,.08);
  border-radius:15px;
  color:#fff;
  background:var(--cta-accent);
  box-shadow:0 5px 12px rgba(128,37,6,.14);
  filter:none;
  transition:background-color 180ms var(--cta-ease),transform 110ms var(--cta-ease),box-shadow 110ms ease;
}
.landing-v3 .signature-cta {
  min-height:54px;
  padding:0 46px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
}
.landing-v3 .signature-cta::before,
.landing-v3 .cta-leading { display:none; }
.landing-v3 .cta-label {
  font-size:14px;
  font-weight:720;
  letter-spacing:-.015em;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.landing-v3 .signature-cta .cta-trailing {
  width:20px;
  height:20px;
  position:absolute;
  right:15px;
  border-radius:0;
  display:grid;
  place-items:center;
  color:currentColor;
  background:transparent;
  box-shadow:none;
  transition:transform 170ms var(--cta-ease);
}
.landing-v3 .signature-cta .cta-trailing svg { width:17px; height:17px; }
@media (hover:hover) {
  .landing-v3 .primary-button:hover {
    color:#fff;
    background:var(--cta-accent-hover);
    box-shadow:0 5px 12px rgba(128,37,6,.14);
    filter:none;
    transform:none;
  }
  .landing-v3 .signature-cta:hover .cta-trailing { background:transparent; transform:translateX(2px); }
}
.landing-v3 .primary-button:active {
  color:#fff;
  background:var(--cta-accent-pressed);
  box-shadow:0 2px 6px rgba(111,30,4,.13);
  transform:translateY(1px) scale(.985);
}
.landing-v3 .signature-cta:active .cta-trailing { transform:translateX(1px); }

.landing-v3 .header-try {
  border-color:rgba(113,34,6,.08);
  background:var(--cta-accent);
  box-shadow:none;
  transition:width var(--motion-normal) var(--ease-out),padding var(--motion-normal) var(--ease-out),opacity var(--motion-fast) ease,background-color 170ms var(--cta-ease),transform 100ms var(--cta-ease);
}
@media (hover:hover) {
  .landing-v3 .header-try:hover { background:var(--cta-accent-hover); box-shadow:none; transform:none; }
}
.landing-v3 .header-try:active { background:var(--cta-accent-pressed); box-shadow:none; transform:translateY(1px) scale(.985); }

.landing-v3 .light-cta.signature-cta {
  min-height:54px;
  border:1px solid rgba(42,31,24,.11);
  border-radius:15px;
  color:#2d2723;
  background:#fffdfb;
  box-shadow:none;
  transition:background-color 180ms var(--cta-ease),border-color 180ms var(--cta-ease),transform 110ms var(--cta-ease);
}
.landing-v3 .light-cta .cta-trailing { color:#5e5650; background:transparent; box-shadow:none; }
@media (hover:hover) {
  .landing-v3 .light-cta:hover {
    border-color:var(--orange-border);
    background:#fff8f4;
    box-shadow:none;
    transform:none;
  }
  .landing-v3 .light-cta:hover .cta-trailing { color:var(--cta-accent); background:transparent; }
}
.landing-v3 .light-cta:active { background:#f8f1eb; box-shadow:none; transform:translateY(1px) scale(.985); }

.landing-v3 .tertiary-action {
  width:max-content;
  max-width:100%;
  min-height:44px;
  margin-left:auto;
  margin-right:auto;
  padding:0 3px;
  border:0;
  border-radius:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:#4c4540;
  background:transparent;
  box-shadow:none;
  font-size:12px;
  font-weight:680;
  cursor:pointer;
  transition:color 170ms var(--cta-ease),transform 100ms var(--cta-ease);
}
.landing-v3 .tertiary-action .cta-label { font-size:12px; font-weight:680; }
.landing-v3 .tertiary-action .cta-trailing {
  width:17px;
  height:17px;
  position:static;
  border-radius:0;
  display:grid;
  place-items:center;
  color:currentColor;
  background:transparent;
  box-shadow:none;
  transition:transform 170ms var(--cta-ease);
}
.landing-v3 .tertiary-action .cta-trailing svg { width:15px; height:15px; }
@media (hover:hover) {
  .landing-v3 .tertiary-action:hover { color:var(--cta-accent); }
  .landing-v3 .tertiary-action:hover .cta-trailing { transform:translateX(2px); }
}
.landing-v3 .tertiary-action:active { color:var(--cta-accent-pressed); transform:translateY(1px) scale(.985); }
.landing-v3 .editor-conversion-cta {
  margin:10px auto 0;
  border:0;
  color:#4c4540;
  background:transparent;
  box-shadow:none;
}
.landing-v3 .demo-conversion .tertiary-action { margin-top:2px; }

.landing-v3 .link-button::after { display:none; }
.landing-v3 .link-button { color:#4c4540; transition:color 170ms var(--cta-ease); }
.landing-v3 .link-button .link-icon { box-shadow:none; }
@media (hover:hover) {
  .landing-v3 .link-button:hover { color:var(--cta-accent); }
  .landing-v3 .link-button:hover .link-icon { border-color:var(--orange-border); background:var(--cta-tint); transform:none; }
}

.landing-final-v3 .primary-button.signature-cta {
  border-color:rgba(113,34,6,.08);
  color:#fff;
  background:var(--cta-accent);
  box-shadow:0 5px 12px rgba(0,0,0,.18);
}
.landing-final-v3 .primary-button .cta-trailing {
  color:#fff;
  background:transparent;
  box-shadow:none;
}
@media (hover:hover) {
  .landing-final-v3 .primary-button.signature-cta:hover {
    color:#fff;
    background:var(--cta-accent-hover);
    box-shadow:0 5px 12px rgba(0,0,0,.18);
  }
  .landing-final-v3 .primary-button.signature-cta:hover .cta-trailing { color:#fff; background:transparent; }
}
.landing-final-v3 .primary-button.signature-cta:active {
  color:#fff;
  background:var(--cta-accent-pressed);
  box-shadow:0 2px 6px rgba(0,0,0,.16);
}
.landing-final-v3 .primary-button.signature-cta:focus-visible { outline-color:rgba(255,255,255,.68); }

.landing-v3 .free-plan { box-shadow:0 8px 22px rgba(31,21,15,.1); }
.landing-v3 .paid-plan,
.landing-v3 .paid-plan.featured,
.landing-v3 .paid-plan.featured:not(.is-selected) {
  border:1px solid rgba(42,31,24,.1);
  background:#fffdfb;
  box-shadow:none;
  transform:none;
  transition:border-color 210ms var(--cta-ease),background-color 210ms var(--cta-ease);
}
.landing-v3 .paid-plan.featured::before { display:none; }
.landing-v3 .paid-plan.is-selected,
.landing-v3 .paid-plan.featured.is-selected {
  border:1.5px solid rgba(211,70,15,.62);
  background:#fffdfb;
  box-shadow:none;
  transform:none;
}
@media (hover:hover) {
  .landing-v3 .paid-plan:not(.is-selected):hover,
  .landing-v3 .paid-plan.featured:not(.is-selected):hover {
    border-color:rgba(211,70,15,.24);
    background:#fffdfb;
    box-shadow:none;
    transform:none;
  }
  .landing-v3 .paid-plan.is-selected:hover { border-color:rgba(211,70,15,.62); box-shadow:none; transform:none; }
}
.landing-v3 .paid-plan:active { transform:scale(.997); }
.landing-v3 .plan-recommendation {
  min-height:20px;
  padding:0 7px;
  border-color:rgba(211,70,15,.12);
  color:#ad3b10;
  background:#fff3ec;
  font-size:7px;
}
.landing-v3 .plan-selected-mark {
  width:28px;
  min-width:28px;
  height:28px;
  min-height:28px;
  padding:0;
  border:1px solid rgba(211,70,15,.18);
  border-radius:50%;
  opacity:0;
  color:#fff;
  background:var(--cta-accent);
  box-shadow:none;
  transform:scale(.82);
  transition:opacity 190ms var(--cta-ease),transform 210ms var(--cta-ease);
}
.landing-v3 .plan-selected-mark svg { width:13px; height:13px; }
.landing-v3 .paid-plan.is-selected .plan-selected-mark {
  border-color:transparent;
  opacity:1;
  color:#fff;
  background:var(--cta-accent);
  box-shadow:none;
  transform:none;
}
.landing-v3 .paid-plan button {
  min-height:48px;
  border-color:rgba(42,31,24,.11);
  color:#342e29;
  background:#faf6f2;
  box-shadow:none;
  transition:background-color 180ms var(--cta-ease),border-color 180ms var(--cta-ease),transform 100ms var(--cta-ease);
}
.landing-v3 .plan-cta-arrow {
  width:18px;
  height:18px;
  border-radius:0;
  color:#655d56;
  background:transparent;
  transition:transform 170ms var(--cta-ease);
}
.landing-v3 .plan-cta-arrow svg { width:15px; height:15px; }
@media (hover:hover) {
  .landing-v3 .paid-plan:not(.is-selected) button:hover {
    border-color:var(--orange-border);
    background:#fff8f4;
    box-shadow:none;
  }
  .landing-v3 .paid-plan button:hover .plan-cta-arrow { background:transparent; transform:translateX(2px); }
}
.landing-v3 .paid-plan.is-selected button,
.landing-v3 .paid-plan button.is-continue {
  border-color:rgba(113,34,6,.08);
  color:#fff;
  background:var(--cta-accent);
  box-shadow:0 4px 10px rgba(128,37,6,.12);
}
.landing-v3 .paid-plan.is-selected .plan-cta-arrow,
.landing-v3 .paid-plan button.is-continue .plan-cta-arrow { color:#fff; background:transparent; }
@media (hover:hover) {
  .landing-v3 .paid-plan.is-selected button:hover,
  .landing-v3 .paid-plan button.is-continue:hover {
    background:var(--cta-accent-hover);
    box-shadow:0 4px 10px rgba(128,37,6,.12);
  }
}
.landing-v3 .paid-plan button:active { background:#f3ece6; transform:translateY(1px) scale(.985); }
.landing-v3 .paid-plan.is-selected button:active,
.landing-v3 .paid-plan button.is-continue:active { color:#fff; background:var(--cta-accent-pressed); box-shadow:0 2px 5px rgba(111,30,4,.1); }

@media (max-width:370px) {
  .landing-v3 .signature-cta { min-height:52px; padding:0 42px; }
  .landing-v3 .signature-cta .cta-trailing { right:13px; }
}

/* CTA rebalance: visible conversion anchors without restoring CTA overload. */
.landing-v3 .primary-button.signature-cta {
  min-height:54px;
  border:1px solid rgba(111,28,3,.13);
  border-radius:16px;
  overflow:hidden;
  isolation:isolate;
  color:#fff;
  background:var(--cta-accent);
  box-shadow:0 2px 0 #ad2b04,0 7px 16px rgba(128,34,5,.18),inset 0 1px rgba(255,255,255,.15);
  transform:none;
  transition:background-color 180ms var(--cta-ease),transform 110ms var(--cta-ease),box-shadow 140ms ease;
}
.landing-v3 .primary-button.signature-cta.cta-large { min-height:56px; }
.landing-v3 .primary-button.signature-cta.cta-standard { min-height:54px; }
.landing-v3 .primary-button.signature-cta::before {
  content:"";
  display:block;
  width:30%;
  position:absolute;
  z-index:0;
  top:-34%;
  bottom:-34%;
  left:-42%;
  border-radius:0;
  opacity:0;
  background:linear-gradient(90deg,rgba(255,184,142,0),rgba(255,184,142,.3),rgba(255,184,142,0));
  pointer-events:none;
  transform:translateX(-110%) skewX(-17deg);
}
.landing-v3 .primary-button.signature-cta .cta-label,
.landing-v3 .primary-button.signature-cta .cta-trailing { z-index:1; }
.landing-v3 .primary-button.signature-cta .cta-label {
  font-size:14px;
  font-weight:720;
  letter-spacing:-.014em;
}
@media (hover:hover) {
  .landing-v3 .primary-button.signature-cta:hover {
    color:#fff;
    background:var(--cta-accent-hover);
    box-shadow:0 2px 0 #9f2603,0 8px 18px rgba(120,30,4,.2),inset 0 1px rgba(255,255,255,.16);
    transform:none;
  }
  .landing-v3 .primary-button.signature-cta:hover::before { animation:cta-warm-reveal 430ms var(--cta-ease) both; }
  .landing-v3 .primary-button.signature-cta:hover .cta-trailing { transform:translateX(2px); }
}
.landing-v3 .primary-button.signature-cta:active {
  color:#fff;
  background:var(--cta-accent-pressed);
  box-shadow:0 1px 0 #972202,0 3px 8px rgba(105,25,3,.16),inset 0 1px rgba(255,255,255,.12);
  transform:translateY(1px) scale(.985);
}
.landing-v3 .primary-button.signature-cta:active::before { animation:cta-warm-tap 240ms var(--cta-ease) both; }
.landing-v3 .primary-button.signature-cta:active .cta-trailing { transform:translateX(2px); }
@keyframes cta-warm-reveal {
  0% { opacity:0; transform:translateX(-110%) skewX(-17deg); }
  24% { opacity:.72; }
  100% { opacity:0; transform:translateX(540%) skewX(-17deg); }
}
@keyframes cta-warm-tap {
  0% { opacity:0; transform:translateX(-95%) skewX(-17deg); }
  38% { opacity:.78; }
  100% { opacity:0; transform:translateX(500%) skewX(-17deg); }
}

.landing-v3 .editor-final-message.editor-final-compact {
  border-color:rgba(43,31,24,.08);
  background:rgba(255,253,250,.86);
  box-shadow:0 10px 28px rgba(67,39,23,.045),inset 0 1px rgba(255,255,255,.92);
}
.landing-v3 .editor-final-message.editor-final-compact h3 em { color:#b8654d; }
.landing-v3 .editor-conversion-moment {
  margin-top:18px;
  padding:0 2px;
  display:grid;
  gap:8px;
}
.landing-v3 .editor-conversion-cta {
  width:100%;
  margin:0;
  border:1px solid rgba(111,28,3,.13);
  color:#fff;
  background:var(--cta-accent);
  box-shadow:0 2px 0 #ad2b04,0 7px 16px rgba(128,34,5,.18),inset 0 1px rgba(255,255,255,.15);
}
.landing-v3 .editor-conversion-moment > small {
  color:#766d66;
  font-size:10px;
  font-weight:620;
  text-align:center;
}

.landing-v3 .proof-conversion {
  margin-top:22px;
  display:grid;
  gap:9px;
}
.landing-v3 .proof-cta.signature-cta {
  min-height:54px;
  border:1px solid rgba(255,255,255,.52);
  border-radius:16px;
  color:#241e1a;
  background:#fffaf6;
  box-shadow:0 8px 20px rgba(0,0,0,.18),inset 0 1px #fff;
  font-size:14px;
  font-weight:720;
  transition:background-color 180ms var(--cta-ease),transform 110ms var(--cta-ease),box-shadow 140ms ease;
}
.landing-v3 .proof-cta .cta-trailing { color:var(--cta-accent); }
@media (hover:hover) {
  .landing-v3 .proof-cta:hover { background:#fff1e8; box-shadow:0 9px 22px rgba(0,0,0,.2),inset 0 1px #fff; }
  .landing-v3 .proof-cta:hover .cta-trailing { transform:translateX(2px); }
}
.landing-v3 .proof-cta:active { background:#fbe8dd; transform:translateY(1px) scale(.985); }
.landing-v3 .proof-conversion > small {
  color:rgba(255,255,255,.5);
  font-size:9px;
  text-align:center;
}

.landing-v3 .demo-conversion.visible { max-height:158px; margin-top:24px; }
.landing-v3 .demo-conversion p { margin-bottom:11px; color:#544c46; }
.landing-v3 .landing-demo.has-interacted .landing-swipe-actions .demo-like {
  border-color:var(--orange-border);
  color:var(--cta-accent);
  background:#fff7f2;
  box-shadow:none;
}
.landing-v3 .photoshoot-conversion-cta { width:100%; margin-top:22px; }

.landing-v3 .header-try {
  border-color:rgba(111,28,3,.12);
  color:#fff;
  background:var(--cta-accent);
}
@media (hover:hover) {
  .landing-v3 .header-try:hover { color:#fff; background:var(--cta-accent-hover); }
}

.landing-v3 .paid-plan.is-selected button,
.landing-v3 .paid-plan button.is-continue {
  border-color:rgba(111,28,3,.12);
  background:var(--cta-accent);
  box-shadow:0 2px 0 #ad2b04,0 6px 14px rgba(128,34,5,.16);
}
@media (hover:hover) {
  .landing-v3 .paid-plan.is-selected button:hover,
  .landing-v3 .paid-plan button.is-continue:hover {
    background:var(--cta-accent-hover);
    box-shadow:0 2px 0 #9f2603,0 7px 16px rgba(120,30,4,.18);
  }
}

@media (max-width:370px) {
  .landing-v3 .primary-button.signature-cta .cta-label,
  .landing-v3 .proof-cta .cta-label { font-size:13px; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .primary-button.signature-cta::before { display:none !important; animation:none !important; }
}

.landing-v3 .hero-start-note {
  margin:13px 3px 18px;
  display:flex;
  align-items:center;
  gap:10px;
  text-align:left;
}
.landing-v3 .hero-start-note > span {
  width:30px;
  height:30px;
  flex:0 0 auto;
  border:0;
  border-radius:10px;
  display:grid;
  place-items:center;
  color:var(--orange-primary);
  background:rgba(255,239,229,.72);
}
.landing-v3 .hero-start-note > span svg { width:14px; height:14px; }
.landing-v3 .hero-start-note > div { min-width:0; display:grid; gap:2px; }
.landing-v3 .hero-start-note b {
  color:#3d3732;
  font-size:11.5px;
  font-weight:700;
  line-height:1.25;
}
.landing-v3 .hero-start-note small {
  color:#817970;
  font-size:9.5px;
  line-height:1.35;
}

.landing-v3 .hero-proof .compare-label,
.landing-v3 .smart-fix-compact-compare .compare-label {
  transition:opacity 150ms ease,transform 180ms cubic-bezier(.2,.8,.2,1),visibility 0s linear 0s;
}
.landing-v3 .hero-proof .compare-label.is-obscured,
.landing-v3 .smart-fix-compact-compare .compare-label.is-obscured {
  opacity:0;
  visibility:hidden;
  transform:translateY(-2px) scale(.92);
  transition:opacity 110ms ease,transform 140ms ease,visibility 0s linear 110ms;
}

/* Mobile landing middle — compact product story */
.landing-v3 { overflow-x:clip; }
.landing-v3 .smart-fix-compact,
.landing-v3 .photoshoot-stream,
.landing-v3 .choice-chapter-compact,
.landing-v3 .compact-how-v2,
.landing-v3 .identity-trust,
.landing-v3 .landing-pricing-compact,
.landing-v3 .landing-faq-compact {
  width:100%;
  max-width:760px;
  margin:0 auto;
  padding:62px 20px;
}
.landing-v3 .smart-fix-compact,
.landing-v3 .choice-chapter-compact,
.landing-v3 .identity-trust,
.landing-v3 .landing-faq-compact { background:#fffdfa; }
.landing-v3 .photoshoot-stream,
.landing-v3 .compact-how-v2,
.landing-v3 .landing-pricing-compact { background:#f8f4ef; }
.landing-v3 .middle-section-head { margin:0 0 24px; }
.landing-v3 .middle-section-head h2,
.landing-v3 .choice-chapter-compact h2,
.landing-v3 .compact-how-v2 h2,
.landing-v3 .identity-trust h2,
.landing-v3 .landing-pricing-compact h2,
.landing-v3 .landing-faq-compact h2 {
  margin:12px 0 12px;
  color:#171411;
  font-size:clamp(32px,9vw,42px);
  line-height:.98;
  letter-spacing:-.055em;
}
.landing-v3 .middle-section-head h2 em,
.landing-v3 .choice-chapter-compact h2 em,
.landing-v3 .compact-how-v2 h2 em,
.landing-v3 .identity-trust h2 em,
.landing-v3 .landing-pricing-compact h2 em { color:var(--orange-primary); font-style:normal; }
.landing-v3 .middle-section-head > p,
.landing-v3 .choice-chapter-compact > .subtitle,
.landing-v3 .landing-pricing-compact > .subtitle {
  max-width:620px;
  margin:0;
  color:#6e665f;
  font-size:16px;
  line-height:1.55;
}
.landing-v3 .middle-section-cta { margin-top:20px; }

.landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta) {
  min-height:58px;
  padding:0 48px 0 26px;
  border:1px solid rgba(181,43,5,.18);
  border-radius:20px;
  color:#fff;
  background:linear-gradient(118deg,#f04a12 0%,#dc3709 100%);
  box-shadow:0 8px 19px rgba(205,52,9,.21),inset 0 1px rgba(255,255,255,.22);
  transform:none;
  transition:transform 280ms cubic-bezier(.34,1.42,.64,1),box-shadow 210ms ease,filter 200ms ease,border-color 200ms ease;
}
.landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta)::before { display:none; animation:none; }
.landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta) .cta-label {
  font-size:17px;
  font-weight:700;
  letter-spacing:-.018em;
  white-space:nowrap;
}
.landing-v3 :is(.hero-improve-cta,.hero-photoshoot-cta) .cta-trailing {
  width:28px;
  height:28px;
  right:14px;
  border:1px solid rgba(255,255,255,.23);
  border-radius:10px;
  background:rgba(255,255,255,.13);
  box-shadow:inset 0 1px rgba(255,255,255,.12);
  transition:transform 210ms cubic-bezier(.22,.72,.26,1),background-color 200ms ease,border-color 200ms ease;
}
.landing-v3 :is(.hero-improve-cta,.hero-photoshoot-cta) .cta-trailing svg { width:15px; height:15px; }
.landing-v3 .primary-button.signature-cta.hero-photoshoot-cta { padding-right:44px; padding-left:18px; }
.landing-v3 .primary-button.signature-cta.hero-photoshoot-cta .cta-label { font-size:clamp(13px,3.95vw,17px); }
@media (hover:hover) and (pointer:fine) {
  .landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta):hover {
    color:#fff;
    border-color:rgba(191,44,3,.2);
    background:linear-gradient(118deg,#f65018 0%,#e23a0a 100%);
    box-shadow:0 12px 24px rgba(205,52,9,.26),inset 0 1px rgba(255,255,255,.25);
    filter:saturate(1.02);
    animation:hero-cta-call-hint 310ms cubic-bezier(.36,.07,.19,.97) 1 both;
  }
  .landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta):hover .cta-trailing {
    background:rgba(255,255,255,.18);
    border-color:rgba(255,255,255,.3);
    transform:translateX(3px);
  }
}
.landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta):active {
  color:#fff;
  background:linear-gradient(118deg,#df410d 0%,#c73005 100%);
  box-shadow:0 3px 9px rgba(182,42,5,.18),inset 0 1px rgba(255,255,255,.15);
  filter:none;
  transform:translateY(1px) scale(.98);
  transition-duration:90ms,120ms,120ms,120ms;
}
.landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta):active .cta-trailing { transform:translateX(1px) scale(.96); }
.landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta):focus-visible {
  outline:3px solid rgba(239,68,12,.32);
  outline-offset:3px;
  border-color:rgba(176,38,1,.38);
}
@keyframes hero-cta-call-hint {
  0%,100% { transform:translate3d(0,-2px,0) rotate(0); }
  18% { transform:translate3d(-.9px,-2px,0) rotate(-.16deg); }
  36% { transform:translate3d(.9px,-2px,0) rotate(.16deg); }
  54% { transform:translate3d(-.6px,-2px,0) rotate(-.1deg); }
  72% { transform:translate3d(.45px,-2px,0) rotate(.08deg); }
}
@keyframes hero-cta-mobile-arrow-hint {
  0%,100% { transform:translateX(0); }
  45%,72% { transform:translateX(3px); }
}
@media (hover:none), (pointer:coarse) {
  .landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta).is-mobile-cta-hint {
    color:#fff;
    border-color:rgba(191,44,3,.2);
    background:linear-gradient(118deg,#f65018 0%,#e23a0a 100%);
    box-shadow:0 12px 24px rgba(205,52,9,.26),inset 0 1px rgba(255,255,255,.25);
    filter:saturate(1.02);
    animation:hero-cta-call-hint 310ms cubic-bezier(.36,.07,.19,.97) 1 both;
  }
  .landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta).is-mobile-cta-hint .cta-trailing {
    background:rgba(255,255,255,.18);
    border-color:rgba(255,255,255,.3);
    animation:hero-cta-mobile-arrow-hint 310ms cubic-bezier(.22,.72,.26,1) 1 both;
  }
}
@media (prefers-reduced-motion:reduce) {
  .landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta),
  .landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta) .cta-trailing {
    animation:none !important;
    transition:none !important;
  }
  .landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta):hover,
  .landing-v3 .primary-button.signature-cta:is(.hero-improve-cta,.hero-photoshoot-cta):active { transform:none; }
}

/* Match the two public entry CTAs to the compact pricing selection button. */
.landing-v3 .header-try,
.landing-v3 .landing-final-v3 .primary-button.signature-cta {
  border:0;
  color:#fff;
  background:linear-gradient(145deg,#f15a20,#df3e0b);
  box-shadow:0 7px 16px rgba(203,58,10,.2),inset 0 1px rgba(255,255,255,.23);
  font-weight:700;
}
.landing-v3 .header-try {
  border-radius:14px;
  font-size:13px;
  line-height:1;
}
.landing-v3 .marketing-header.is-compact .header-try {
  width:106px;
  min-width:106px;
  min-height:46px;
  padding:0 13px;
}
.landing-v3 .landing-final-v3 .primary-button.signature-cta {
  border-radius:16px;
  box-shadow:0 9px 20px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.23);
}
@media (hover:hover) {
  .landing-v3 .header-try:hover,
  .landing-v3 .landing-final-v3 .primary-button.signature-cta:hover {
    border:0;
    color:#fff;
    background:linear-gradient(145deg,#f46228,#e54510);
    box-shadow:0 9px 20px rgba(203,58,10,.24),inset 0 1px rgba(255,255,255,.26);
    transform:translateY(-1px);
  }
  .landing-v3 .landing-final-v3 .primary-button.signature-cta:hover {
    box-shadow:0 11px 24px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.26);
  }
}
.landing-v3 .header-try:active,
.landing-v3 .landing-final-v3 .primary-button.signature-cta:active {
  border:0;
  color:#fff;
  background:linear-gradient(145deg,#df4514,#ca3308);
  box-shadow:0 3px 8px rgba(170,45,8,.18),inset 0 1px rgba(255,255,255,.16);
  transform:translateY(1px) scale(.985);
}

.landing-v3 .smart-fix-compact-visual { position:relative; }
.landing-v3 .smart-fix-compact-compare {
  width:100%;
  height:min(108vw,430px);
  min-height:360px;
  border:1px solid rgba(65,47,36,.12);
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 22px 44px rgba(62,42,29,.13);
}
.landing-v3 .smart-fix-compact-compare .compare-handle { width:54px; height:54px; }
.landing-v3 .smart-fix-marker {
  --marker-delay:0s;
  position:absolute;
  z-index:5;
  min-height:28px;
  padding:0 9px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:999px;
  display:flex;
  align-items:center;
  gap:6px;
  color:#fff;
  background:rgba(37,29,24,.72);
  box-shadow:0 6px 18px rgba(0,0,0,.12);
  backdrop-filter:blur(10px);
  font-size:10px;
  font-weight:700;
  opacity:0;
  transform:translateY(6px) scale(.94);
  transform-origin:center;
  pointer-events:none;
}
.landing-v3 .smart-fix-marker i { width:6px; height:6px; border-radius:50%; background:#69d49d; box-shadow:0 0 0 4px rgba(105,212,157,.14); }
.landing-v3 .smart-fix-marker.marker-face { --marker-delay:0s; top:25%; left:16px; }
.landing-v3 .smart-fix-marker.marker-light { --marker-delay:.42s; top:48%; left:18px; }
.landing-v3 .smart-fix-marker.marker-contrast { --marker-delay:.84s; top:32%; right:16px; }
.landing-v3 .smart-fix-marker.marker-detail { --marker-delay:1.26s; top:60%; right:18px; }
.landing-v3 .smart-fix-compact .smart-fix-marker {
  animation:smart-fix-marker-cycle 7.2s cubic-bezier(.2,.8,.2,1) var(--marker-delay) infinite both;
}
.landing-v3 .smart-fix-compact .smart-fix-marker i {
  animation:smart-fix-marker-dot 1.8s ease-in-out calc(var(--marker-delay) + .35s) infinite;
}
@keyframes smart-fix-marker-cycle {
  0%,5% { opacity:0; transform:translateY(6px) scale(.94); }
  12%,78% { opacity:1; transform:translateY(0) scale(1); }
  87%,100% { opacity:0; transform:translateY(-3px) scale(.97); }
}
@keyframes smart-fix-marker-dot {
  0%,100% { background:#69d49d; box-shadow:0 0 0 3px rgba(105,212,157,.12); transform:scale(.92); }
  45% { background:#7ce4ae; box-shadow:0 0 0 7px rgba(105,212,157,.05); transform:scale(1.15); }
}
.landing-v3 .smart-fix-compact-card {
  position:relative;
  z-index:6;
  margin:-10px 10px 0;
  padding:13px 14px;
  border:1px solid rgba(58,42,32,.1);
  border-radius:20px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  align-items:start;
  gap:10px;
  color:#fff;
  background:#2a211b;
  box-shadow:0 14px 28px rgba(41,29,21,.14);
}
.landing-v3 .smart-fix-ready {
  width:44px;
  height:44px;
  flex:0 0 44px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(145deg,#ff6a2f 0%,#e7430d 100%);
  box-shadow:0 8px 20px rgba(220,66,15,.3),inset 0 1px rgba(255,255,255,.36);
}
.landing-v3 .smart-fix-gallery-icon {
  width:24px;
  height:24px;
  display:block;
  background:currentColor;
  -webkit-mask:url('/assets/icon-image-gallery.png') center / contain no-repeat;
  mask:url('/assets/icon-image-gallery.png') center / contain no-repeat;
  filter:drop-shadow(.45px 0 0 #fff) drop-shadow(-.45px 0 0 #fff) drop-shadow(0 .45px 0 #fff) drop-shadow(0 -.45px 0 #fff);
}
.landing-v3 .smart-fix-compact-card small { display:block; color:#ff9b6a; font-size:7.5px; font-weight:800; line-height:1.35; letter-spacing:.08em; }
.landing-v3 .smart-fix-compact-card h3 { margin:2px 0 4px; font-size:14.5px; line-height:1.18; letter-spacing:-.02em; }
.landing-v3 .smart-fix-compact-card p { margin:0; color:rgba(255,255,255,.66); font-size:11.5px; line-height:1.42; }

.landing-v3 .photoshoot-source {
  margin-bottom:16px;
  padding:10px;
  border:1px solid rgba(59,43,33,.09);
  border-radius:20px;
  display:flex;
  align-items:center;
  gap:13px;
  background:#fff;
}
.landing-v3 .photoshoot-source img { width:78px; height:92px; flex:0 0 auto; border-radius:14px; object-fit:cover; }
.landing-v3 .photoshoot-source span { min-width:0; display:grid; gap:3px; }
.landing-v3 .photoshoot-source small { color:var(--orange-primary); font-size:9px; font-weight:800; letter-spacing:.1em; }
.landing-v3 .photoshoot-source b { color:#241f1b; font-size:15px; }
.landing-v3 .photoshoot-source p { margin:0; color:#766e67; font-size:13px; }
.landing-v3 .photoshoot-result-strip {
  width:calc(100% + 20px);
  margin-right:-20px;
  padding:2px 0 12px;
  overflow:hidden;
  overscroll-behavior-inline:contain;
  touch-action:pan-y pinch-zoom;
  user-select:none;
  -webkit-user-select:none;
  cursor:grab;
  outline-offset:4px;
}
.landing-v3 .photoshoot-result-strip.is-dragging { cursor:grabbing; }
.landing-v3 .photoshoot-result-track {
  width:max-content;
  padding-right:20px;
  display:flex;
  align-items:stretch;
  gap:12px;
  transform:translate3d(0,0,0);
  will-change:transform;
}
.landing-v3 .photoshoot-result-card {
  position:relative;
  flex:0 0 min(81vw,310px);
  min-width:min(81vw,310px);
  height:min(112vw,420px);
  min-height:370px;
  border-radius:26px;
  overflow:hidden;
  background:#2a211b;
  box-shadow:0 18px 36px rgba(55,37,26,.14);
  transform:translate3d(0,0,0) scale(.965);
  transform-origin:center;
  opacity:.86;
  will-change:transform,opacity;
  transition:transform var(--carousel-duration,0ms) cubic-bezier(.22,1,.36,1),opacity var(--carousel-duration,0ms) ease;
}
.landing-v3 .photoshoot-result-card > img { width:100%; height:100%; object-fit:cover; pointer-events:none; -webkit-user-drag:none; }
.landing-v3 .photoshoot-result-card::after { content:""; position:absolute; inset:42% 0 0; background:linear-gradient(transparent,rgba(22,16,13,.86)); pointer-events:none; }
.landing-v3 .photoshoot-result-card > span { position:absolute; z-index:2; right:18px; bottom:18px; left:18px; display:grid; gap:2px; color:#fff; }
.landing-v3 .photoshoot-result-card small { color:#ffb18b; font-size:9px; font-weight:800; letter-spacing:.11em; }
.landing-v3 .photoshoot-result-card b { font-size:23px; letter-spacing:-.035em; }
.landing-v3 .photoshoot-result-card p { margin:0; color:rgba(255,255,255,.72); font-size:13px; }
.landing-v3 .photoshoot-strip-nav { min-height:32px; margin-top:4px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.landing-v3 .photoshoot-strip-nav > span { color:#5f5750; font-size:12px; font-weight:750; }
.landing-v3 .photoshoot-strip-nav > div { display:flex; align-items:center; gap:5px; }
.landing-v3 .photoshoot-strip-nav i { width:5px; height:5px; border-radius:999px; background:#d8cdc4; transition:width 220ms ease,background 220ms ease; }
.landing-v3 .photoshoot-strip-nav i.active { width:18px; background:var(--orange-primary); }

.landing-v3 .choice-chapter-compact .choice-tabs { min-height:54px; }
.landing-v3 .choice-chapter-compact .choice-tabs button { min-height:46px; }
.landing-v3 .choice-chapter-compact .landing-catalog-view { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.landing-v3 .choice-chapter-compact .landing-result-tile { min-width:0; height:220px; border-radius:20px; }
.landing-v3 .choice-chapter-compact .landing-swipe-stage { height:min(105vw,390px); min-height:350px; }
.landing-v3 .choice-chapter-compact .landing-swipe-card,
.landing-v3 .choice-chapter-compact .landing-swipe-peek { width:min(86vw,330px); height:min(105vw,390px); min-height:350px; touch-action:pan-y; }
.landing-v3 .choice-chapter-compact .landing-swipe-actions { display:none !important; }
.landing-v3 .choice-chapter-compact .landing-swipe-view { margin-top:12px; }
.landing-v3 .choice-chapter-compact .swipe-instruction {
  margin:8px 0 0;
  color:#8a8179;
  font-size:12px;
  font-weight:540;
  line-height:1.35;
  text-align:center;
}
.landing-v3 .choice-chapter-compact .swipe-stamp {
  top:18px;
  bottom:auto;
  min-height:38px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:999px;
  display:flex;
  align-items:center;
  gap:7px;
  color:#fff;
  background:rgba(35,27,22,.76);
  box-shadow:0 8px 24px rgba(0,0,0,.15);
  backdrop-filter:blur(12px);
  font-size:11px;
  letter-spacing:0;
  transform:scale(.88) translateY(4px);
  transition:opacity 80ms linear,transform 100ms ease;
}
.landing-v3 .choice-chapter-compact .swipe-stamp svg { width:16px; height:16px; }
.landing-v3 .choice-chapter-compact .swipe-stamp.pass { left:14px; right:auto; color:#fff2ec; background:rgba(72,49,42,.8); }
.landing-v3 .choice-chapter-compact .swipe-stamp.like { right:14px; left:auto; color:#fff; background:rgba(214,61,10,.84); }
.landing-v3 .choice-chapter-compact .decision-broken-heart { position:relative; }
.landing-v3 .choice-chapter-compact .decision-broken-heart::after { content:""; position:absolute; top:1px; left:7px; width:2px; height:15px; background:currentColor; transform:rotate(28deg); box-shadow:0 0 0 1px rgba(72,49,42,.25); }
.landing-v3 .choice-chapter-compact .demo-conversion.visible { max-height:150px; margin-top:14px; }
.landing-v3 .choice-chapter-compact .demo-conversion p { margin-bottom:8px; }
.landing-v3 .choice-chapter-compact { padding-bottom:48px; }

.landing-v3 .compact-how-v2 ol { margin-top:24px; display:grid; grid-template-columns:1fr; gap:10px; }
.landing-v3 .compact-how-v2 ol li {
  min-height:108px;
  padding:17px 16px;
  border:1px solid rgba(59,43,33,.09);
  border-radius:20px;
  display:grid;
  grid-template-columns:42px 1fr;
  align-items:center;
  gap:12px;
  background:#fff;
  box-shadow:0 8px 20px rgba(59,39,26,.04);
}
.landing-v3 .compact-how-v2 ol li > svg { width:38px; height:38px; padding:10px; border-radius:13px; color:var(--orange-primary); background:#fff0e8; }
.landing-v3 .compact-how-v2 ol li div { margin:0; padding:0; display:grid; gap:5px; }
.landing-v3 .compact-how-v2 ol li b { color:#2b2521; font-size:16px; }
.landing-v3 .compact-how-v2 ol li small { color:#746c65; font-size:13px; line-height:1.4; }

.landing-v3 .identity-benefits { margin-top:24px; display:grid; gap:10px; }
.landing-v3 .identity-benefits article {
  min-height:92px;
  padding:15px;
  border:1px solid rgba(59,43,33,.09);
  border-radius:18px;
  display:grid;
  grid-template-columns:40px 1fr;
  align-items:center;
  gap:12px;
  background:#fff;
}
.landing-v3 .identity-benefits article > span { width:40px; height:40px; border-radius:13px; display:grid; place-items:center; color:var(--orange-primary); background:#fff0e8; }
.landing-v3 .identity-benefits svg { width:19px; height:19px; }
.landing-v3 .identity-benefits b { color:#2a2420; font-size:15px; }
.landing-v3 .identity-benefits p { margin:3px 0 0; color:#746c65; font-size:13px; line-height:1.4; }
.landing-v3 .identity-examples {
  width:calc(100% + 20px);
  margin:16px -20px 0 0;
  padding-right:20px;
  display:flex;
  gap:10px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:0 20px;
  scroll-behavior:smooth;
  overscroll-behavior-x:contain;
  touch-action:pan-x pan-y;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
}
.landing-v3 .identity-examples:focus-visible { outline:2px solid rgba(220,70,15,.3); outline-offset:4px; }
.landing-v3 .identity-examples.is-dragging { cursor:grabbing; scroll-snap-type:none; scroll-behavior:auto; }
.landing-v3 .identity-examples::after { content:""; flex:0 0 calc(55% + 10px); }
.landing-v3 .identity-examples::-webkit-scrollbar { display:none; }
.landing-v3 .identity-examples figure { position:relative; flex:0 0 45%; min-width:0; height:190px; margin:0; border-radius:18px; overflow:hidden; scroll-snap-align:start; scroll-snap-stop:always; background:#eee4dc; transform:translate3d(0,0,0); transform-origin:center; backface-visibility:hidden; will-change:transform; transition:transform 240ms cubic-bezier(.22,1,.36,1),opacity 180ms ease,box-shadow 220ms ease; }
.landing-v3 .identity-examples.is-dragging figure { transition:none; }
.landing-v3 .identity-examples figure[data-identity-selectable="true"] { cursor:pointer; }
.landing-v3 .identity-examples figure.is-selected { box-shadow:0 0 0 1.5px rgba(238,74,18,.72),0 8px 24px rgba(225,66,12,.16); }
.landing-v3 .identity-examples figure.is-selected::after { content:""; position:absolute; z-index:2; inset:1px; border:1px solid rgba(255,126,76,.72); border-radius:17px; box-shadow:inset 0 0 12px rgba(255,112,53,.09); pointer-events:none; }
.landing-v3 .identity-examples figure[role="button"]:focus-visible { outline:2px solid rgba(226,69,14,.52); outline-offset:2px; }
.landing-v3 .identity-examples img { width:100%; height:100%; object-fit:cover; pointer-events:none; -webkit-user-drag:none; }
.landing-v3 .identity-examples figcaption { position:absolute; z-index:3; right:9px; bottom:9px; left:9px; padding:8px 10px; border-radius:10px; color:#fff; background:rgba(31,24,20,.66); backdrop-filter:blur(8px); font-size:11px; font-weight:700; }

.landing-v3 .landing-pricing-compact .free-plan-compact { padding:18px; }
.landing-v3 .landing-pricing-compact .free-plan-compact ul { grid-template-columns:1fr; gap:8px; }
.landing-v3 .landing-pricing-compact .credit-explainer { margin:14px 0; }
.landing-v3 .landing-pricing-compact .pricing-model-tabs button { min-height:48px; }
.landing-v3 .landing-pricing-compact .paid-plan button { min-height:52px; }
.landing-v3 .landing-faq-compact .faq-list { margin-top:22px; }
.landing-v3 .landing-faq-compact summary { min-height:64px; }
.landing-v3 .landing-faq-compact summary h3 { font-size:15px; line-height:1.3; }
.landing-v3 .landing-faq-compact details > p { font-size:14px; line-height:1.55; }

@media (min-width:768px) {
  .landing-v3 .smart-fix-compact,
  .landing-v3 .photoshoot-stream,
  .landing-v3 .choice-chapter-compact,
  .landing-v3 .compact-how-v2,
  .landing-v3 .identity-trust,
  .landing-v3 .landing-pricing-compact,
  .landing-v3 .landing-faq-compact { padding-top:76px; padding-bottom:76px; }
  .landing-v3 .smart-fix-compact-visual { margin:0 auto; }
  .landing-v3 .middle-section-cta { margin-top:22px; }
  .landing-v3 .photoshoot-result-card { min-width:300px; height:420px; }
  .landing-v3 .identity-examples figure { height:230px; }
}

@media (max-width:360px) {
  .landing-v3 .smart-fix-compact,
  .landing-v3 .photoshoot-stream,
  .landing-v3 .choice-chapter-compact,
  .landing-v3 .compact-how-v2,
  .landing-v3 .identity-trust,
  .landing-v3 .landing-pricing-compact,
  .landing-v3 .landing-faq-compact { padding-right:16px; padding-left:16px; }
  .landing-v3 .photoshoot-result-strip,
  .landing-v3 .identity-examples { width:calc(100% + 16px); margin-right:-16px; }
  .landing-v3 .identity-examples { padding-right:16px; }
  .landing-v3 .photoshoot-result-track { padding-right:16px; }
  .landing-v3 .photoshoot-result-card { flex-basis:min(82vw,286px); min-width:min(82vw,286px); }
  .landing-v3 .smart-fix-compact-card { margin-right:6px; margin-left:6px; padding:12px 13px; }
  .landing-v3 .smart-fix-compact-card h3 { font-size:14px; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .photoshoot-result-strip,
  .landing-v3 .identity-examples { scroll-behavior:auto; }
  .landing-v3 .photoshoot-strip-nav i,
  .landing-v3 .choice-chapter-compact .swipe-stamp { transition:none; }
  .landing-v3 .photoshoot-result-track,
  .landing-v3 .photoshoot-result-card { transition:none !important; }
  .landing-v3 .identity-examples figure { transition:none !important; transform:none !important; opacity:1 !important; }
  .landing-v3 .smart-fix-compact .smart-fix-marker,
  .landing-v3 .smart-fix-compact .smart-fix-marker i { animation:none !important; }
  .landing-v3 .smart-fix-compact .smart-fix-marker { opacity:1; transform:none; }
}

/* Keep pricing-specific layout above the shared compact-section defaults. */
.landing-v3 .landing-pricing-v4 { container-type:inline-size; }
.landing-v3 .landing-pricing-compact.landing-pricing-v4 { max-width:1120px; }
.landing-v3 .landing-pricing-compact.landing-pricing-v4 > h2 {
  max-width:680px;
  font-size:clamp(25px,7.4cqi,34px);
  line-height:1.03;
  letter-spacing:-.052em;
}
@container (min-width:768px) {
  .landing-v3 .landing-pricing-compact.landing-pricing-v4 { padding-right:32px; padding-left:32px; }
}
@media (max-width:360px) {
  .landing-v3 .landing-pricing-compact.landing-pricing-v4 > h2 { font-size:clamp(25px,7.4cqi,27px); }
}

/* Pricing v5 — responsive photo packages */
.landing-v3 .landing-pricing-compact.landing-pricing-v4 {
  --pricing-accent:#e94710;
  max-width:1180px;
  padding-bottom:calc(112px + env(safe-area-inset-bottom));
  overflow:visible;
  background:
    radial-gradient(circle at 100% 0,rgba(255,220,201,.42),transparent 28%),
    #f8f4ef;
}
.landing-v3 .landing-pricing-v4 > h2 {
  max-width:720px;
  margin-top:13px;
  font-size:clamp(31px,9.2cqi,43px);
  line-height:1.02;
  letter-spacing:-.052em;
}
.landing-v3 .landing-pricing-v4 > .subtitle {
  max-width:720px;
  margin-top:14px;
  color:#746c65;
  font-size:14px;
  line-height:1.52;
}
.landing-v3 .pricing-trust-chips {
  margin:18px 0 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  list-style:none;
}
.landing-v3 .pricing-trust-chips li {
  min-height:34px;
  padding:7px 10px;
  border:1px solid rgba(55,43,34,.08);
  border-radius:999px;
  display:flex;
  align-items:center;
  gap:6px;
  color:#5f5751;
  background:rgba(255,255,255,.66);
  font-size:10px;
  font-weight:680;
  line-height:1.2;
  box-shadow:inset 0 1px rgba(255,255,255,.9);
}
.landing-v3 .pricing-trust-chips svg { width:14px; height:14px; color:var(--pricing-accent); }
.landing-v3 .pricing-technology-note {
  margin-top:12px;
  padding:12px 14px;
  border:1px solid rgba(65,48,38,.075);
  border-radius:16px;
  display:grid;
  gap:4px;
  background:rgba(255,255,255,.52);
}
.landing-v3 .pricing-technology-note > span {
  color:#d94712;
  font-size:8px;
  font-weight:780;
  line-height:1.2;
  letter-spacing:.09em;
}
.landing-v3 .pricing-technology-note > p {
  margin:0;
  max-width:670px;
  color:#6e655e;
  font-size:10px;
  line-height:1.42;
}
.landing-v3 .pricing-group-tabs { margin-top:22px; }
.landing-v3 [data-pricing-section][data-pricing-group="series"] .pricing-group-tabs::before { transform:translateX(100%); }
.landing-v3 .pricing-packages {
  width:calc(100% + 40px);
  margin:16px -20px 0;
  padding:0 20px 10px;
  display:flex;
  align-items:stretch;
  gap:16px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:20px;
  overscroll-behavior-x:contain;
  touch-action:pan-y pinch-zoom;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.landing-v3 .pricing-package-card {
  flex:0 0 min(360px,calc(100vw - 40px));
  width:auto;
  height:auto;
  min-width:0;
  min-height:0;
  padding:24px;
  border:1px solid rgba(48,38,30,.105);
  border-radius:28px;
  scroll-snap-align:center;
  scroll-snap-stop:always;
  background:#fff;
  box-shadow:0 12px 30px rgba(58,39,27,.075),inset 0 1px rgba(255,255,255,.9);
  opacity:.9;
  transform:scale(.985);
}
.landing-v3 .pricing-package-card.is-recommended { background:linear-gradient(155deg,#fff 0%,#fff8f2 100%); }
.landing-v3 .pricing-package-card.is-selected {
  border-color:rgba(233,71,16,.8);
  background:linear-gradient(155deg,#fff 0%,#fff7f0 100%);
  box-shadow:0 0 0 1px rgba(233,71,16,.16),0 16px 35px rgba(209,63,13,.13),inset 0 1px rgba(255,255,255,.96);
  opacity:1;
  transform:scale(1);
}
.landing-v3 .pricing-package-top { min-height:38px; justify-content:flex-start; }
.landing-v3 .pricing-photo-stack {
  width:46px;
  height:38px;
  flex:0 0 46px;
  position:relative;
  display:block;
}
.landing-v3 .pricing-photo-stack i {
  position:absolute;
  top:3px;
  left:10px;
  width:27px;
  height:32px;
  border:1px solid rgba(255,255,255,.94);
  border-radius:9px;
  background:
    radial-gradient(circle at 56% 35%,#ffd3bd 0 15%,transparent 16%),
    linear-gradient(150deg,#ffd8c4 0 45%,#df5a22 46% 66%,#4c332a 67%);
  box-shadow:0 5px 11px rgba(82,45,28,.14);
}
.landing-v3 .pricing-photo-stack i:nth-child(1) { transform:translateX(calc(var(--stack-spread) * -1)) rotate(-7deg); opacity:.72; }
.landing-v3 .pricing-photo-stack i:nth-child(2) { transform:translateX(var(--stack-spread)) rotate(7deg); opacity:.84; }
.landing-v3 .pricing-photo-stack i:nth-child(3) { transform:translateY(-2px); }
.landing-v3 .pricing-package-badge {
  max-width:150px;
  padding:7px 10px;
  font-size:8px;
  line-height:1.1;
  text-align:center;
}
.landing-v3 .pricing-package-check {
  width:30px;
  height:30px;
  margin-left:auto;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:var(--pricing-accent);
  box-shadow:0 7px 16px rgba(211,63,13,.22);
  opacity:0;
  transform:scale(.76);
  transition:opacity 190ms ease,transform 220ms cubic-bezier(.2,.8,.2,1);
}
.landing-v3 .pricing-package-check svg { width:16px; height:16px; }
.landing-v3 .pricing-package-card.is-selected .pricing-package-check { opacity:1; transform:scale(1); }
.landing-v3 .pricing-package-card h3 { margin-top:16px; font-size:17px; }
.landing-v3 .pricing-package-credits { margin-top:5px; font-size:27px; }
.landing-v3 .pricing-reference-price {
  min-height:30px;
  margin-top:13px;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  color:#8a817a;
  font-size:9px;
  line-height:1.25;
}
.landing-v3 .pricing-reference-price span { max-width:142px; }
.landing-v3 .pricing-reference-price s { color:#7a716a; font-size:11px; font-weight:670; white-space:nowrap; text-decoration-color:rgba(122,113,106,.7); text-decoration-thickness:1px; }
.landing-v3 .pricing-package-price { margin-top:3px; }
.landing-v3 .pricing-package-price b { font-size:29px; }
.landing-v3 .pricing-package-price span { font-size:10px; }
.landing-v3 .pricing-package-saving { margin-top:10px; }
.landing-v3 .pricing-package-saving.is-monetary {
  color:#b83b11;
  background:#ffeadf;
  box-shadow:inset 0 0 0 1px rgba(227,70,16,.055);
}
.landing-v3 .pricing-package-card > p {
  min-height:0;
  margin-top:12px;
  color:#6f6761;
  font-size:11px;
  line-height:1.45;
  display:block;
  overflow:visible;
}
.landing-v3 .pricing-package-benefits { margin-top:14px; gap:9px; }
.landing-v3 .pricing-package-benefits li { font-size:10px; line-height:1.36; }
.landing-v3 .pricing-package-saving { margin-top:18px; }
.landing-v3 .pricing-carousel-controls {
  min-height:28px;
  margin-top:8px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.landing-v3 .pricing-package-dots {
  min-height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
}
.landing-v3 .pricing-package-dots button {
  width:14px;
  height:28px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  background:transparent;
  touch-action:manipulation;
}
.landing-v3 .pricing-package-dots button span {
  width:7px;
  height:7px;
  border-radius:999px;
  display:block;
  background:#d7cec6;
  box-shadow:none;
  transition:width 220ms cubic-bezier(.2,.8,.2,1),background-color 180ms ease,transform 220ms cubic-bezier(.2,.8,.2,1);
}
.landing-v3 .pricing-package-dots button[aria-current="true"] { width:34px; background:transparent; }
.landing-v3 .pricing-package-dots button[aria-current="true"] span {
  width:28px;
  height:7px;
  background:var(--pricing-accent);
  box-shadow:0 4px 10px rgba(211,63,13,.14);
  transform:none;
}
.landing-v3 .pricing-package-dots button:focus-visible { outline:2px solid rgba(230,66,12,.32); outline-offset:2px; border-radius:999px; }
.landing-v3 .pricing-package-dots button[hidden] { display:none; }
.landing-v3 .pricing-upsell { min-height:34px; margin-top:5px; }
.landing-v3 .pricing-upsell button,.landing-v3 .pricing-upsell span { font-size:10px; }
.landing-v3 .pricing-conversion-messages {
  max-width:660px;
  margin:2px auto 0;
  display:grid;
  gap:7px;
}
.landing-v3 .pricing-conversion-message {
  min-height:34px;
  padding:8px 11px;
  border:1px solid rgba(65,48,38,.075);
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:#655c55;
  background:rgba(255,255,255,.62);
  font-size:9px;
  font-weight:650;
  line-height:1.3;
  text-align:center;
}
.landing-v3 .pricing-conversion-message.is-social svg { width:15px; height:15px; flex:0 0 15px; color:#d94712; }
.landing-v3 .pricing-conversion-message.is-operational { flex-wrap:wrap; gap:6px 12px; }
.landing-v3 .pricing-offer-copy b { color:#463e38; font-weight:700; }
.landing-v3 .pricing-offer-copy time { min-width:58px; display:inline-block; color:#b83b11; font-variant-numeric:tabular-nums; font-weight:760; }
.landing-v3 .pricing-capacity-copy { display:inline-flex; align-items:center; gap:6px; }
.landing-v3 .pricing-capacity-copy i { width:6px; height:6px; border-radius:50%; background:#e75a22; box-shadow:0 0 0 4px rgba(231,90,34,.1); }
.landing-v3 .pricing-purchase {
  z-index:8;
  position:static;
  margin:6px -8px 0;
  padding:10px 8px 8px;
  border-radius:24px;
  background:linear-gradient(180deg,rgba(248,244,239,.15),rgba(248,244,239,.94) 28%,#f8f4ef 65%);
  backdrop-filter:blur(12px);
}
.landing-v3 .pricing-purchase-cta { min-height:60px; border-radius:20px; }
.landing-v3 .pricing-purchase-cta .cta-label { font-size:clamp(13px,4.1vw,16px); }
.landing-v3 .pricing-purchase > small { margin-top:7px; font-size:9px; }

@media (max-width:899px) {
  main.landing-v3 { overflow-x:clip; }
  .landing-v3 .pricing-packages {
    width:calc(100% + 40px);
    margin-right:-20px;
    margin-left:-20px;
    padding-right:20px;
    padding-left:20px;
    display:flex;
    grid-template-columns:none;
    overflow-x:auto;
    transform:none;
  }
  .landing-v3 .pricing-package-card { width:auto; height:auto; opacity:.9; transform:scale(.985); }
  .landing-v3 .pricing-package-card.is-selected { opacity:1; transform:scale(1); }
  .landing-v3 .pricing-carousel-controls { display:flex; }
  .landing-v3 .pricing-upsell { max-width:none; justify-content:center; text-align:center; }
  .landing-v3 .pricing-purchase { max-width:none; }
  .landing-v3 .pricing-purchase.is-sticky-ready {
    position:sticky;
    bottom:max(10px,env(safe-area-inset-bottom));
  }
}

/* Pricing selection mark: use the supplied approval sign on every plan card. */
.landing-v3 .pricing-package-check {
  overflow:hidden;
}
.landing-v3 .pricing-package-check img {
  display:block;
  width:56%;
  height:56%;
  object-fit:contain;
  filter:brightness(0) invert(1);
}

@media (min-width:900px) {
  main.landing-v3 { overflow-x:visible; }
  .landing-v3 .landing-pricing-compact.landing-pricing-v4 {
    width:min(1180px,calc(100vw - 48px));
    max-width:1180px;
    margin-right:0;
    margin-left:50%;
    padding:82px 32px 86px;
    position:relative;
    transform:translateX(-50%);
  }
  .landing-v3 .landing-pricing-v4 > h2 { font-size:44px; }
  .landing-v3 .landing-pricing-v4 > .subtitle { font-size:15px; }
  .landing-v3 .pricing-technology-note { max-width:720px; }
  .landing-v3 .pricing-packages {
    width:100%;
    margin:20px 0 0;
    padding:0;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:stretch;
    gap:18px;
    overflow:visible;
    transform:none;
  }
  .landing-v3 [data-pricing-section][data-pricing-group="series"] .pricing-packages {
    max-width:760px;
    margin-right:auto;
    margin-left:auto;
    grid-template-columns:repeat(2,minmax(0,360px));
    justify-content:center;
  }
  .landing-v3 .pricing-package-card { width:auto; height:auto; padding:28px; opacity:1; transform:none; }
  .landing-v3 .pricing-carousel-controls { display:none; }
  .landing-v3 .pricing-upsell { max-width:680px; margin:14px auto 0; justify-content:center; text-align:center; }
  .landing-v3 .pricing-purchase {
    position:static;
    max-width:660px;
    margin:16px auto 0;
    padding:0;
    background:transparent;
    backdrop-filter:none;
  }
  .landing-v3 .pricing-conversion-messages { margin-top:4px; }
}

@media (max-width:360px) {
  .landing-v3 .landing-pricing-v4 > h2 { font-size:29px; }
  .landing-v3 .landing-pricing-v4 > .subtitle { font-size:13px; }
  .landing-v3 .pricing-package-card { flex-basis:min(360px,calc(100vw - 40px)); height:auto; padding:24px; }
  .landing-v3 .pricing-package-price b { font-size:27px; }
  .landing-v3 .pricing-purchase-cta .cta-label { font-size:12.5px; letter-spacing:-.02em; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-package-check,
  .landing-v3 .pricing-package-dots button span { animation:none !important; transition:none !important; }
}

/* Pricing v6 — AI photographer packages and shared offer countdown. */
.landing-v3 .landing-pricing-v4 > h2 { max-width:760px; }
.landing-v3 .landing-pricing-v4 > .subtitle { max-width:790px; }
.landing-v3 .pricing-trust-chips { margin-top:16px; }
.landing-v3 .pricing-offer-panel {
  width:100%;
  margin-top:18px;
  padding:17px;
  border:1px solid rgba(235,78,24,.24);
  border-radius:21px;
  color:#332a25;
  background:#fff3eb;
  box-shadow:inset 0 1px rgba(255,255,255,.86);
}
.landing-v3 .pricing-offer-eyebrow {
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:5px 9px;
  border-radius:999px;
  color:#c94314;
  background:rgba(255,255,255,.72);
  font-size:8px;
  font-weight:800;
  line-height:1;
  letter-spacing:.1em;
}
.landing-v3 .pricing-offer-panel h3 {
  margin-top:10px;
  color:#27211d;
  font-size:20px;
  line-height:1.12;
  letter-spacing:-.035em;
}
.landing-v3 .pricing-offer-panel > p:not(.pricing-offer-ended) {
  margin:6px 0 0;
  color:#71665e;
  font-size:11px;
  line-height:1.4;
}
.landing-v3 .pricing-offer-timer {
  width:100%;
  margin-top:14px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 12px minmax(0,1fr);
  align-items:start;
  gap:2px;
  font-variant-numeric:tabular-nums;
}
.landing-v3 .pricing-offer-timer > span {
  min-width:0;
  display:grid;
  justify-items:center;
  gap:5px;
}
.landing-v3 .pricing-offer-timer b {
  width:100%;
  min-height:52px;
  padding:8px 4px;
  border:1px solid rgba(219,71,19,.11);
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#d84612;
  background:rgba(255,255,255,.82);
  font-size:clamp(28px,9.5vw,34px);
  font-weight:780;
  line-height:1;
  letter-spacing:-.045em;
  box-shadow:0 5px 14px rgba(113,54,29,.055),inset 0 1px #fff;
}
.landing-v3 .pricing-offer-timer small {
  color:#897b72;
  font-size:10px;
  font-weight:650;
  line-height:1;
}
.landing-v3 .pricing-offer-timer > i {
  padding-top:12px;
  color:rgba(103,74,59,.42);
  text-align:center;
  font-size:24px;
  font-weight:650;
  line-height:1;
  font-style:normal;
}
.landing-v3 .pricing-offer-until {
  display:block;
  margin-top:13px;
  color:#50463f;
  font-size:11px;
  font-weight:720;
  line-height:1.25;
}
.landing-v3 .pricing-offer-after { font-size:9px !important; }
.landing-v3 .pricing-offer-ended {
  margin:0;
  color:#3f3731;
  font-size:14px;
  font-weight:720;
  line-height:1.4;
}
.landing-v3 .pricing-group-tabs { margin-top:18px; }
.landing-v3 .pricing-package-card {
  display:flex;
  flex-direction:column;
}
.landing-v3 .pricing-package-badge-wrap {
  min-width:0;
  display:grid;
  justify-items:start;
  gap:5px;
}
.landing-v3 .pricing-social-proof-note {
  max-width:165px;
  color:#8a7e75;
  font-size:7px;
  font-weight:580;
  line-height:1.3;
}
.landing-v3 .pricing-package-footer {
  margin-top:auto;
  padding-top:15px;
  color:#a43b16;
  font-size:9px;
  font-weight:730;
  line-height:1.3;
}
.landing-v3 .pricing-package-card.is-recommended {
  border-color:rgba(233,71,16,.3);
  background:linear-gradient(155deg,#fff 0%,#fff7ef 100%);
  box-shadow:0 14px 34px rgba(181,72,29,.1),inset 0 1px rgba(255,255,255,.96);
}
.landing-v3 .pricing-upsell button,
.landing-v3 .pricing-upsell span { font-size:11px; }
.landing-v3 .pricing-offer-compact {
  display:none;
  min-height:34px;
  margin-bottom:7px;
  padding:7px 10px;
  border:1px solid rgba(227,72,18,.13);
  border-radius:12px;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:#6a5144;
  background:#fff1e8;
  font-size:10px;
  line-height:1.2;
  font-variant-numeric:tabular-nums;
}
.landing-v3 .pricing-offer-compact b { color:#bd3d12; font-weight:780; white-space:nowrap; }

@media (max-width:899px) {
  .landing-v3 .pricing-package-card {
    flex-basis:min(360px,86vw);
    min-height:435px;
  }
  .landing-v3 .pricing-package-card > p { min-height:48px; }
  .landing-v3 .pricing-package-benefits { min-height:64px; }
  .landing-v3 .is-offer-past .pricing-purchase.is-sticky-ready .pricing-offer-compact { display:flex; }
}

@media (min-width:900px) {
  .landing-v3 .pricing-offer-panel {
    max-width:100%;
    padding:20px 22px;
    display:grid;
    grid-template-columns:minmax(280px,1fr) minmax(340px,460px);
    grid-template-rows:auto auto auto;
    align-items:center;
    column-gap:30px;
  }
  .landing-v3 .pricing-offer-eyebrow,
  .landing-v3 .pricing-offer-panel h3,
  .landing-v3 .pricing-offer-panel > p { grid-column:1; }
  .landing-v3 .pricing-offer-timer { grid-column:2; grid-row:1/4; margin-top:0; }
  .landing-v3 .pricing-offer-until { grid-column:2; grid-row:4; text-align:center; }
  .landing-v3 .pricing-offer-after { grid-column:1/-1 !important; margin-top:12px !important; }
  .landing-v3 .pricing-package-card { min-height:455px; }
  .landing-v3 .pricing-package-card > p { min-height:48px; }
  .landing-v3 .pricing-package-benefits { min-height:72px; }
}

@media (max-width:360px) {
  .landing-v3 .pricing-offer-panel { padding:16px; }
  .landing-v3 .pricing-offer-timer { grid-template-columns:minmax(0,1fr) 8px minmax(0,1fr) 8px minmax(0,1fr); }
  .landing-v3 .pricing-offer-timer b { min-height:49px; font-size:28px; }
  .landing-v3 .pricing-offer-timer > i { font-size:20px; }
  .landing-v3 .pricing-package-card { flex-basis:86vw; padding:22px; }
  .landing-v3 .pricing-purchase-cta .cta-label { font-size:12px; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-offer-panel *,
  .landing-v3 .pricing-offer-compact,
  .landing-v3 .pricing-package-card.is-arriving { animation:none !important; transition:none !important; }
}

/* Pricing final — compact group stepper and all plans visible. */
.landing-v3 .landing-pricing-v4 {
  overflow:hidden;
  padding-top:72px;
  padding-bottom:76px;
}
.landing-v3 .landing-pricing-v4 > h2 {
  max-width:620px;
  margin-top:12px;
  font-size:clamp(31px,9.3vw,40px);
  line-height:1.02;
  letter-spacing:-.055em;
}
.landing-v3 .landing-pricing-v4 > .subtitle {
  max-width:690px;
  margin-top:14px;
  color:#70665f;
  font-size:14px;
  line-height:1.48;
}
.landing-v3 .pricing-trust-chips {
  width:100%;
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
}
.landing-v3 .pricing-trust-chips li {
  min-height:38px;
  padding:8px 11px;
  justify-content:flex-start;
  border:1px solid rgba(67,50,40,.075);
  border-radius:13px;
  color:#4f4640;
  background:rgba(255,255,255,.72);
  font-size:11px;
}
.landing-v3 .pricing-trust-chips svg { width:15px; height:15px; color:#138a5a; }

.landing-v3 .pricing-offer-panel {
  width:100%;
  max-width:690px;
  min-height:0;
  margin:16px auto 0;
  padding:12px 13px;
  border-radius:16px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"badge timer" "title timer" "until timer";
  align-items:center;
  column-gap:12px;
  row-gap:3px;
  background:#fff3eb;
  box-shadow:inset 0 1px rgba(255,255,255,.82);
}
.landing-v3 .pricing-offer-eyebrow {
  grid-area:badge;
  justify-self:start;
  min-height:20px;
  padding:4px 7px;
  font-size:7px;
}
.landing-v3 .pricing-offer-panel h3 {
  grid-area:title;
  margin:0;
  font-size:14px;
  line-height:1.15;
  letter-spacing:-.02em;
}
.landing-v3 .pricing-offer-timer {
  grid-area:timer;
  width:auto;
  margin:0;
  grid-template-columns:34px 5px 34px 5px 34px;
  gap:1px;
  align-items:center;
}
.landing-v3 .pricing-offer-timer > span { gap:2px; }
.landing-v3 .pricing-offer-timer b {
  width:34px;
  min-height:30px;
  padding:3px 2px;
  border-radius:9px;
  font-size:17px;
  letter-spacing:-.035em;
}
.landing-v3 .pricing-offer-timer small { font-size:6.5px; }
.landing-v3 .pricing-offer-timer > i { padding:0; font-size:13px; }
.landing-v3 .pricing-offer-until {
  grid-area:until;
  margin:0;
  color:#75675e;
  font-size:9px;
  font-weight:650;
}

.landing-v3 .pricing-group-tabs {
  position:relative;
  width:100%;
  max-width:620px;
  min-height:74px;
  margin:24px auto 0;
  padding:0 8px;
  border:0;
  border-radius:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:26px;
  overflow:visible;
  background:transparent;
  box-shadow:none;
}
.landing-v3 .pricing-group-tabs::before {
  content:"";
  position:absolute;
  z-index:0;
  top:16px;
  right:25%;
  left:25%;
  height:1px;
  border-radius:1px;
  background:#d9d0ca;
  transform:none !important;
}
.landing-v3 .pricing-group-tabs button {
  position:relative;
  z-index:1;
  min-width:0;
  min-height:70px;
  padding:0;
  border:0;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:9px;
  color:#8a8079;
  background:transparent;
  text-align:left;
}
.landing-v3 .pricing-group-tabs button > i {
  flex:0 0 11px;
  width:11px;
  height:11px;
  margin-top:11px;
  border:3px solid #f7f2ee;
  border-radius:50%;
  background:#cfc6c0;
  box-shadow:0 0 0 1px #cfc6c0;
  transition:background .22s ease,box-shadow .22s ease,transform .22s ease;
}
.landing-v3 .pricing-group-tabs button > span {
  min-width:0;
  padding-top:5px;
  display:grid;
  gap:3px;
}
.landing-v3 .pricing-group-tabs button b { font-size:12px; font-weight:740; line-height:1.2; }
.landing-v3 .pricing-group-tabs button small { font-size:9px; font-weight:570; line-height:1.2; }
.landing-v3 .pricing-group-tabs button[aria-selected="true"] { color:#2d2622; }
.landing-v3 .pricing-group-tabs button[aria-selected="true"] > i {
  background:#ed4812;
  box-shadow:0 0 0 1px #ed4812,0 4px 12px rgba(229,67,15,.2);
  transform:scale(1.08);
}
.landing-v3 .pricing-group-tabs button:focus-visible { outline:3px solid rgba(238,72,18,.24); outline-offset:4px; }

.landing-v3 .pricing-packages {
  --pricing-group-direction:1;
  width:100%;
  max-width:960px;
  margin:2px auto 0;
  padding:0;
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  overflow:visible;
  scroll-snap-type:none;
  touch-action:pan-y pinch-zoom;
  user-select:none;
  transition:transform .24s cubic-bezier(.22,1,.36,1),opacity .2s ease;
  will-change:transform,opacity;
}
.landing-v3 .pricing-packages.is-group-dragging { transition:none; }
.landing-v3 .pricing-packages.is-group-entering { animation:pricingGroupEnter .38s cubic-bezier(.22,1,.36,1) both; }
@keyframes pricingGroupEnter {
  from { opacity:.58; transform:translate3d(calc(var(--pricing-group-direction) * 28px),0,0); }
  to { opacity:1; transform:translate3d(0,0,0); }
}
.landing-v3 .pricing-package-card,
.landing-v3 .pricing-package-card.is-recommended {
  width:100%;
  max-width:none;
  min-height:0;
  height:auto;
  margin:0;
  padding:17px;
  border:1px solid rgba(66,47,36,.11);
  border-radius:19px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"top top" "title credits" "copy copy" "price price" "reference saving";
  gap:0 10px;
  color:#2d2723;
  background:rgba(255,255,255,.88);
  box-shadow:0 8px 22px rgba(78,52,37,.055),inset 0 1px rgba(255,255,255,.95);
  transform:none;
  scroll-snap-align:none;
  cursor:pointer;
  transition:border-color .22s ease,box-shadow .22s ease,background .22s ease,transform .18s ease;
}
.landing-v3 .pricing-package-card[hidden] { display:none !important; }
.landing-v3 .pricing-package-card:hover { transform:none; }
.landing-v3 .pricing-package-card.is-selected {
  border-color:rgba(239,72,17,.78);
  background:linear-gradient(145deg,#fff 0%,#fff8f3 100%);
  box-shadow:0 11px 28px rgba(185,65,24,.1),inset 0 0 0 1px rgba(255,117,68,.12);
}
.landing-v3 .pricing-package-card:focus-visible { outline:3px solid rgba(239,72,17,.22); outline-offset:3px; }
.landing-v3 .pricing-package-top { grid-area:top; min-height:27px; display:flex; align-items:center; justify-content:space-between; }
.landing-v3 .pricing-package-badge {
  min-height:23px;
  padding:6px 9px;
  border:0;
  border-radius:999px;
  color:#d54010;
  background:#ffede4;
  font-size:7px;
  font-weight:820;
  line-height:1;
  letter-spacing:.075em;
}
.landing-v3 .pricing-package-check {
  width:27px;
  height:27px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:#ee4812;
  opacity:0;
  transform:scale(.82);
  transition:opacity .2s ease,transform .2s ease;
}
.landing-v3 .pricing-package-check svg { width:14px; height:14px; }
.landing-v3 .pricing-package-card.is-selected .pricing-package-check { opacity:1; transform:scale(1); }
.landing-v3 .pricing-package-card h3 { grid-area:title; margin:13px 0 0; font-size:18px; line-height:1.15; letter-spacing:-.03em; }
.landing-v3 .pricing-package-credits { grid-area:credits; align-self:end; margin-top:13px; color:#453d38; font-size:12px; line-height:1.15; white-space:nowrap; }
.landing-v3 .pricing-package-card > p {
  grid-area:copy;
  min-height:0;
  margin:7px 0 0;
  display:-webkit-box;
  overflow:hidden;
  color:#786e67;
  font-size:11px;
  line-height:1.4;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.landing-v3 .pricing-package-price { grid-area:price; margin-top:14px; padding-top:12px; border-top:1px solid rgba(71,53,43,.08); display:flex; align-items:end; justify-content:space-between; gap:10px; }
.landing-v3 .pricing-package-price b { font-size:27px; font-weight:790; line-height:1; letter-spacing:-.05em; }
.landing-v3 .pricing-package-price span { color:#71665f; font-size:10px; font-weight:650; line-height:1.2; }
.landing-v3 .pricing-reference-price { grid-area:reference; margin-top:10px; display:flex; align-items:center; gap:4px; color:#8a7f78; font-size:9px; line-height:1.2; }
.landing-v3 .pricing-reference-price s { color:#8a7f78; font-weight:650; }
.landing-v3 .pricing-package-saving { grid-area:saving; align-self:end; justify-self:end; margin-top:8px; padding:5px 7px; border-radius:8px; color:#b43a12; background:#fff0e7; font-size:8px; font-weight:750; line-height:1.15; white-space:nowrap; }
.landing-v3 .pricing-plan-argument {
  width:100%;
  max-width:620px;
  min-height:40px;
  margin:13px auto 0;
  padding:10px 13px;
  border:1px solid rgba(225,70,18,.11);
  border-radius:13px;
  color:#9e3c19;
  background:#fff6f0;
  font-size:10.5px;
  font-weight:690;
  line-height:1.35;
  text-align:center;
}
.landing-v3 .pricing-carousel-controls,
.landing-v3 .pricing-upsell { display:none !important; }
.landing-v3 .pricing-purchase {
  width:100%;
  max-width:620px;
  margin:11px auto 0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.landing-v3 .pricing-purchase-cta { min-height:59px; border-radius:20px; }
.landing-v3 .pricing-purchase > small { margin-top:8px; color:#887d75; font-size:9.5px; }

@media (min-width:540px) {
  .landing-v3 .pricing-trust-chips { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .landing-v3 .pricing-trust-chips li { justify-content:center; }
}
@media (min-width:900px) {
  .landing-v3 .landing-pricing-v4 { padding-top:96px; padding-bottom:96px; }
  .landing-v3 .landing-pricing-v4 > h2 { font-size:46px; }
  .landing-v3 .pricing-offer-panel { padding:13px 16px; grid-template-columns:minmax(220px,1fr) auto; }
  .landing-v3 .pricing-group-tabs { margin-top:28px; }
  .landing-v3 .pricing-packages { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; user-select:auto; touch-action:auto; }
  .landing-v3 [data-pricing-section][data-pricing-group="series"] .pricing-packages { max-width:640px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-package-card.is-recommended { min-height:285px; padding:20px; }
  .landing-v3 .pricing-package-card:hover { transform:translateY(-2px); box-shadow:0 15px 32px rgba(85,53,35,.09),inset 0 1px rgba(255,255,255,.95); }
}
@media (max-width:360px) {
  .landing-v3 .landing-pricing-v4 { padding-right:18px; padding-left:18px; }
  .landing-v3 .landing-pricing-v4 > h2 { font-size:29px; }
  .landing-v3 .landing-pricing-v4 > .subtitle { font-size:13px; }
  .landing-v3 .pricing-offer-panel { grid-template-columns:minmax(0,1fr) auto; padding:11px; column-gap:8px; }
  .landing-v3 .pricing-offer-timer { grid-template-columns:31px 4px 31px 4px 31px; }
  .landing-v3 .pricing-offer-timer b { width:31px; font-size:15px; }
  .landing-v3 .pricing-offer-panel h3 { font-size:12px; }
  .landing-v3 .pricing-group-tabs { gap:12px; }
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-package-card.is-recommended { padding:15px; }
  .landing-v3 .pricing-package-card h3 { font-size:17px; }
  .landing-v3 .pricing-package-price b { font-size:25px; }
  .landing-v3 .pricing-package-saving { font-size:7.5px; }
}
@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-packages,
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-package-check,
  .landing-v3 .pricing-group-tabs button > i { animation:none !important; transition:none !important; }
}

/* Pricing navigation and plan-card polish. */
.landing-v3 .landing-pricing-v4 {
  scroll-margin-top:96px;
}
.landing-v3 .pricing-group-tabs {
  min-height:88px;
  margin-top:26px;
  padding:0 10px;
  gap:18px;
}
.landing-v3 .pricing-group-tabs::before {
  top:16px;
  right:25%;
  left:25%;
  height:2px;
  background:#ddd4ce;
}
.landing-v3 .pricing-group-tabs::after {
  content:"";
  position:absolute;
  z-index:1;
  top:16px;
  left:calc(25% - 14px);
  width:28px;
  height:2px;
  border-radius:999px;
  background:#ed4812;
  box-shadow:0 2px 8px rgba(237,72,18,.22);
  transition:left .28s cubic-bezier(.22,1,.36,1);
}
.landing-v3 [data-pricing-section][data-pricing-group="series"] .pricing-group-tabs::after {
  left:calc(75% - 14px);
}
.landing-v3 .pricing-group-tabs button {
  min-height:74px;
  padding:0 4px 5px;
  display:grid;
  grid-template-rows:34px auto;
  justify-items:center;
  align-items:start;
  gap:4px;
  text-align:center;
  -webkit-tap-highlight-color:transparent;
}
.landing-v3 .pricing-group-tabs button > i {
  align-self:center;
  width:12px;
  height:12px;
  margin:0;
  border:3px solid #f7f2ee;
  background:#cfc6c0;
  box-shadow:0 0 0 1px #cfc6c0;
}
.landing-v3 .pricing-group-tabs button > span {
  padding:0;
  justify-items:center;
  gap:3px;
}
.landing-v3 .pricing-group-tabs button b {
  font-size:12px;
  line-height:1.15;
}
.landing-v3 .pricing-group-tabs button small {
  font-size:9px;
  line-height:1.15;
}
.landing-v3 .pricing-packages {
  scroll-margin-top:112px;
  margin-top:8px;
}
.landing-v3 .pricing-package-card.is-selected {
  border-width:1.5px;
  transform:translateY(-2px);
  background:linear-gradient(145deg,#fff 0%,#fff8f3 74%,#fff3e9 100%);
  box-shadow:0 13px 30px rgba(185,65,24,.12),0 0 0 3px rgba(239,72,17,.035),inset 0 0 0 1px rgba(255,117,68,.1);
}
.landing-v3 .pricing-package-badge {
  display:inline-flex;
  align-items:center;
  gap:5px;
  max-width:100%;
}
.landing-v3 .pricing-package-badge > span {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.landing-v3 .pricing-package-badge svg {
  flex:0 0 11px;
  width:11px;
  height:11px;
  stroke-width:2;
}
.landing-v3 .pricing-package-badge.is-social-proof {
  color:#fff;
  background:#e84914;
  box-shadow:0 5px 13px rgba(224,65,15,.18),inset 0 1px rgba(255,255,255,.2);
}
.landing-v3 .pricing-package-credits {
  padding:5px 8px;
  border:1px solid rgba(75,58,48,.07);
  border-radius:999px;
  background:#f4f0ed;
  font-size:10px;
  font-weight:720;
}
@media (hover:hover) and (pointer:fine) {
  .landing-v3 .pricing-package-card.is-selected:hover {
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(185,65,24,.14),0 0 0 3px rgba(239,72,17,.04),inset 0 0 0 1px rgba(255,117,68,.1);
  }
}
@media (max-width:360px) {
  .landing-v3 .pricing-group-tabs {
    min-height:84px;
    gap:10px;
  }
  .landing-v3 .pricing-package-badge {
    max-width:210px;
    font-size:6.8px;
    letter-spacing:.055em;
  }
}
@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-group-tabs::after { transition:none !important; }
}

/* Premium social-proof badge: refined type and a calm recurring light sweep. */
.landing-v3 .pricing-package-card.is-recommended .pricing-package-badge.is-social-proof {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:27px;
  padding:7px 10px 6px;
  font-family:inherit;
  font-size:7.2px;
  font-weight:760;
  line-height:1.25;
  letter-spacing:.095em;
  text-shadow:0 1px 1px rgba(123,32,5,.14);
}
.landing-v3 .pricing-package-card.is-recommended .pricing-package-badge.is-social-proof > svg,
.landing-v3 .pricing-package-card.is-recommended .pricing-package-badge.is-social-proof > span {
  position:relative;
  z-index:2;
}
.landing-v3 .pricing-package-card.is-recommended .pricing-package-badge.is-social-proof > span {
  padding-top:1px;
  line-height:1.25;
}
.landing-v3 .pricing-package-card.is-recommended .pricing-package-badge.is-social-proof::after {
  content:"";
  position:absolute;
  z-index:1;
  top:-70%;
  bottom:-70%;
  left:-42%;
  width:28%;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.72),rgba(255,255,255,0));
  filter:blur(.15px);
  transform:skewX(-18deg) translate3d(-160%,0,0);
  animation:pricingSocialProofSweep 3.4s cubic-bezier(.2,.65,.3,1) infinite;
}
@keyframes pricingSocialProofSweep {
  0%,58% { opacity:0; transform:skewX(-18deg) translate3d(-160%,0,0); }
  62% { opacity:.28; }
  76% { opacity:.76; }
  88% { opacity:0; transform:skewX(-18deg) translate3d(640%,0,0); }
  100% { opacity:0; transform:skewX(-18deg) translate3d(640%,0,0); }
}
@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-package-card.is-recommended .pricing-package-badge.is-social-proof::after {
    animation:none !important;
    opacity:0 !important;
  }
}

/* Secondary plan badges stay alive without competing with the social-proof badge. */
.landing-v3 .pricing-package-badge:not(.is-social-proof) {
  animation:pricingBadgeQuietBreath 6.4s ease-in-out infinite;
  will-change:background-color,box-shadow;
}
.landing-v3 .pricing-package-card:nth-child(2) .pricing-package-badge:not(.is-social-proof) { animation-delay:-2.1s; }
.landing-v3 .pricing-package-card:nth-child(4) .pricing-package-badge:not(.is-social-proof) { animation-delay:-3.2s; }
.landing-v3 .pricing-package-card:nth-child(5) .pricing-package-badge:not(.is-social-proof) { animation-delay:-4.3s; }
@keyframes pricingBadgeQuietBreath {
  0%,100% {
    color:#d54010;
    background:#ffede4;
    box-shadow:0 0 0 0 rgba(232,73,20,0),inset 0 1px rgba(255,255,255,.58);
  }
  48%,58% {
    color:#cf3f10;
    background:#fff2ec;
    box-shadow:0 0 0 3px rgba(232,73,20,.035),inset 0 1px rgba(255,255,255,.82);
  }
}
@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-package-badge:not(.is-social-proof) {
    animation:none !important;
  }
}

/* Smooth tariff selection without reflow or a hard card re-entry. */
.landing-v3 .pricing-package-card,
.landing-v3 .pricing-package-card.is-recommended {
  position:relative;
  border-width:1px;
  transform:translate3d(0,0,0);
  transition:
    border-color .36s ease,
    box-shadow .42s cubic-bezier(.22,1,.36,1),
    background .42s ease,
    transform .38s cubic-bezier(.22,1,.36,1);
}
.landing-v3 .pricing-package-card::after {
  content:"";
  position:absolute;
  inset:-1px;
  border:1px solid rgba(238,72,18,0);
  border-radius:inherit;
  pointer-events:none;
  opacity:0;
  transform:scale(.994);
  transition:
    opacity .32s ease,
    border-color .36s ease,
    transform .42s cubic-bezier(.22,1,.36,1);
}
.landing-v3 .pricing-package-card.is-selected {
  border-width:1px;
  border-color:rgba(238,72,18,.52);
  transform:translate3d(0,-1px,0);
  background:linear-gradient(145deg,#fff 0%,#fffaf6 72%,#fff5ee 100%);
  box-shadow:0 12px 28px rgba(165,72,37,.095),0 0 0 3px rgba(238,72,18,.025),inset 0 0 0 1px rgba(255,126,79,.055);
}
.landing-v3 .pricing-package-card.is-selected::after {
  border-color:rgba(255,112,59,.2);
  opacity:1;
  transform:scale(1);
}
.landing-v3 .pricing-package-check {
  transition:
    opacity .3s ease,
    transform .4s cubic-bezier(.22,1,.36,1),
    box-shadow .35s ease;
}
.landing-v3 .pricing-package-card.is-selected .pricing-package-check {
  box-shadow:0 7px 16px rgba(229,67,15,.16),inset 0 1px rgba(255,255,255,.2);
}
.landing-v3 .pricing-package-card:active {
  transform:translate3d(0,0,0) scale(.995);
}
@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-package-card::after,
  .landing-v3 .pricing-package-check {
    transition:none !important;
  }
}

/* Premium series-size stepper: clear labels, moving rail and tactile active state. */
.landing-v3 .pricing-group-tabs {
  width:100%;
  max-width:620px;
  min-height:116px;
  margin-top:26px;
  padding:14px 10px 9px;
  border:1px solid rgba(72,53,42,.075);
  border-radius:20px;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:auto 74px;
  column-gap:12px;
  row-gap:7px;
  background:rgba(255,255,255,.66);
  box-shadow:0 10px 26px rgba(91,62,44,.045),inset 0 1px rgba(255,255,255,.9);
  backdrop-filter:blur(10px);
}
.landing-v3 .pricing-group-heading {
  grid-column:1/-1;
  justify-self:center;
  color:#b74720;
  font-size:8px;
  font-weight:780;
  line-height:1.2;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.landing-v3 .pricing-group-tabs::before {
  z-index:0;
  top:47px;
  right:25%;
  left:25%;
  height:2px;
  background:linear-gradient(90deg,#ddd4ce,#d8cec8);
  box-shadow:inset 0 1px rgba(255,255,255,.65);
}
.landing-v3 .pricing-group-tabs::after {
  z-index:1;
  top:46px;
  left:calc(25% - 22px);
  width:44px;
  height:4px;
  background:linear-gradient(90deg,#ff713e,#e9420e);
  box-shadow:0 3px 10px rgba(229,67,15,.2);
  transition:left .46s cubic-bezier(.2,.85,.25,1);
}
.landing-v3 [data-pricing-section][data-pricing-group="series"] .pricing-group-tabs::after {
  left:calc(75% - 22px);
}
.landing-v3 .pricing-group-tabs button {
  grid-row:2;
  min-height:74px;
  padding:0 3px;
  grid-template-rows:32px auto;
  gap:5px;
}
.landing-v3 .pricing-group-tabs button > i {
  align-self:center;
  width:10px;
  height:10px;
  border:3px solid #f9f5f2;
  background:#cdc4be;
  box-shadow:0 0 0 1px #c8beb8;
  transition:background .3s ease,box-shadow .36s ease,transform .4s cubic-bezier(.22,1,.36,1);
}
.landing-v3 .pricing-group-tabs button > span {
  width:min(100%,154px);
  min-height:42px;
  padding:7px 9px;
  border:1px solid transparent;
  border-radius:13px;
  align-content:center;
  transition:color .28s ease,background .34s ease,border-color .34s ease,box-shadow .38s ease,transform .38s cubic-bezier(.22,1,.36,1);
}
.landing-v3 .pricing-group-tabs button b {
  font-size:12.5px;
  font-weight:720;
  letter-spacing:-.015em;
}
.landing-v3 .pricing-group-tabs button small {
  color:#948983;
  font-size:9px;
  font-weight:600;
}
.landing-v3 .pricing-group-tabs button[aria-selected="true"] > i {
  background:#ed4812;
  box-shadow:0 0 0 2px #fff,0 0 0 5px rgba(237,72,18,.11),0 5px 14px rgba(229,67,15,.2);
  animation:pricingStepperDotSettle .52s cubic-bezier(.22,1,.36,1) both;
}
.landing-v3 .pricing-group-tabs button[aria-selected="true"] > span {
  color:#2d2723;
  border-color:rgba(235,74,20,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,244,237,.86));
  box-shadow:0 7px 18px rgba(147,66,33,.065),inset 0 1px rgba(255,255,255,.95);
  transform:translateY(-1px);
}
.landing-v3 .pricing-group-tabs button[aria-selected="true"] small { color:#a35032; }
@keyframes pricingStepperDotSettle {
  0% { transform:scale(.78); }
  62% { transform:scale(1.16); }
  100% { transform:scale(1); }
}
@media (hover:hover) and (pointer:fine) {
  .landing-v3 .pricing-group-tabs button:not([aria-selected="true"]):hover > span {
    color:#554b45;
    background:rgba(255,255,255,.58);
  }
}
@media (max-width:360px) {
  .landing-v3 .pricing-group-tabs {
    min-height:112px;
    padding-right:7px;
    padding-left:7px;
    column-gap:6px;
  }
  .landing-v3 .pricing-group-tabs button > span { padding-right:6px; padding-left:6px; }
  .landing-v3 .pricing-group-tabs button b { font-size:11.5px; }
}
@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-group-tabs::after,
  .landing-v3 .pricing-group-tabs button > i,
  .landing-v3 .pricing-group-tabs button > span {
    animation:none !important;
    transition:none !important;
  }
}

/* Mobile-first landing consolidation · 2026-08-24 */
.landing-v3 { overflow:clip; }
.landing-v3 .desktop-marketing-nav { display:none; }
.landing-v3 > section { scroll-margin-top:76px; }
.landing-v3 .landing-hero-v3,
.landing-v3 .smart-fix-compact,
.landing-v3 .photoshoot-chapter,
.landing-v3 .landing-pricing-v4,
.landing-v3 .identity-trust,
.landing-v3 .compact-how-v2,
.landing-v3 .landing-faq-compact,
.landing-v3 .landing-final-v3 {
  width:100%;
  padding-right:20px;
  padding-left:20px;
}
.landing-v3 .smart-fix-compact,
.landing-v3 .photoshoot-chapter,
.landing-v3 .landing-pricing-v4,
.landing-v3 .identity-trust,
.landing-v3 .compact-how-v2,
.landing-v3 .landing-faq-compact,
.landing-v3 .landing-final-v3 { padding-top:80px; padding-bottom:80px; }
.landing-v3 .middle-section-head h2,
.landing-v3 .landing-pricing-v4 > h2,
.landing-v3 .identity-trust h2,
.landing-v3 .compact-how-v2 h2,
.landing-v3 .landing-faq-compact h2,
.landing-v3 .landing-final-v3 h2 { text-wrap:balance; }
.landing-v3 .middle-section-head > p,
.landing-v3 .landing-pricing-v4 > .subtitle { max-width:640px; text-wrap:pretty; }

.landing-v3 .marketing-header { min-height:70px; padding:calc(var(--safe-top) + 4px) 20px 8px; }
.landing-v3 .marketing-header .brand { flex:none; }
.landing-v3 .marketing-header .header-entry { display:none; }
.landing-v3 .header-try { width:auto; min-height:48px; padding:0 14px; opacity:1; }
.landing-v3 .icon-button.compact { width:48px; height:48px; }
.telegram-app-shell {
  position:sticky; z-index:55; top:0; min-height:calc(52px + var(--safe-top));
  padding:calc(var(--safe-top) + 8px) 20px 8px; display:flex; align-items:center; justify-content:space-between;
  color:#2d2723; background:rgba(251,248,244,.94); border-bottom:1px solid rgba(54,40,30,.07); backdrop-filter:blur(18px);
}
.telegram-app-shell strong { font-size:17px; letter-spacing:-.03em; }
.telegram-app-shell span { color:#8a7f77; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.telegram-mini-app body { padding:0; }
.telegram-mini-app #app { border-radius:0; }
.telegram-mini-app .app-topbar { padding-top:calc(var(--tg-safe-area-inset-top, 0px) + 10px); }
.telegram-mini-app .bottom-nav { padding-bottom:max(10px,var(--tg-safe-area-inset-bottom, var(--safe-bottom))); }

.landing-v3 .landing-hero-v3 { padding-top:28px; padding-bottom:64px; }
.landing-v3 .landing-hero-v3 h1 { font-size:clamp(50px,14.5vw,64px); line-height:.94; text-wrap:balance; }
.landing-v3 .landing-hero-v3 .hero-copy { max-width:590px; font-size:17px; line-height:1.52; text-wrap:pretty; }
.landing-v3 .hero-product-switch { margin-top:26px; }
.landing-v3 .hero-showcase { margin-top:16px; }
.landing-v3 .hero-action-stage { margin-top:16px; }

.landing-v3 .smart-fix-compact-visual { max-width:590px; margin:28px auto 0; }
.landing-v3 .smart-fix-marker { font-size:11px; }
.landing-v3 .smart-fix-compact-card { border-radius:20px; box-shadow:0 12px 30px rgba(36,27,22,.14); }
.landing-v3 .smart-fix-proof-lines { margin:16px auto 0; max-width:590px; display:flex; align-items:center; justify-content:space-between; gap:12px; color:#6f665f; font-size:12px; }
.landing-v3 .smart-fix-proof-lines b { color:#3a332f; font-size:13px; }
.landing-v3 .smart-fix-compact > .middle-section-cta { max-width:590px; margin:18px auto 0; }

.landing-v3 .photoshoot-source { margin-top:26px; }
.landing-v3 .photoshoot-result-strip { margin-top:18px; margin-right:-20px; padding-right:20px; overflow:hidden; touch-action:pan-y; }
.landing-v3 .photoshoot-result-card { flex:0 0 calc(100vw - 56px); max-width:374px; }
.landing-v3 .photoshoot-strip-nav { margin-top:12px; justify-content:center; }
.landing-v3 .photoshoot-strip-nav > span { min-width:56px; min-height:28px; display:grid; place-items:center; border-radius:999px; color:#7e736b; background:#f1ede8; font-size:11px; font-weight:750; }
.landing-v3 .photoshoot-choice-compact { margin:16px auto 0; max-width:590px; min-height:62px; padding:10px 14px; display:grid; grid-template-columns:36px 1fr 36px; align-items:center; gap:10px; border:1px solid rgba(75,56,43,.09); border-radius:18px; background:rgba(255,255,255,.74); box-shadow:0 8px 24px rgba(69,47,33,.055); }
.landing-v3 .photoshoot-choice-compact > span { width:36px; height:36px; display:grid; place-items:center; color:var(--orange-primary); background:#fff0e8; border-radius:12px; }
.landing-v3 .photoshoot-choice-compact svg { width:18px; height:18px; }
.landing-v3 .photoshoot-choice-compact div { text-align:center; }
.landing-v3 .photoshoot-choice-compact b,.landing-v3 .photoshoot-choice-compact small { display:block; }
.landing-v3 .photoshoot-choice-compact b { color:#342d29; font-size:13px; }
.landing-v3 .photoshoot-choice-compact small { margin-top:2px; color:#857a72; font-size:11px; }
.landing-v3 .photoshoot-view-root { margin-top:18px; }
.landing-v3 .photoshoot-view-switch {
  width:100%; min-height:60px; padding:4px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px;
  border:1px solid rgba(75,56,43,.1); border-radius:19px; background:#eee9e4;
  box-shadow:inset 0 1px 2px rgba(45,30,21,.04);
}
.landing-v3 .photoshoot-view-switch button {
  min-width:0; min-height:52px; padding:0 10px; border:0; border-radius:15px; display:flex; align-items:center; justify-content:center; gap:8px;
  color:#81776f; background:transparent; font:inherit; cursor:pointer;
  transition:color 210ms ease,background-color 210ms ease,box-shadow 210ms ease,transform 210ms cubic-bezier(.22,1,.36,1);
}
.landing-v3 .photoshoot-view-switch button[aria-selected="true"] { color:#302925; background:#fff; box-shadow:0 5px 16px rgba(64,44,31,.09),inset 0 0 0 1px rgba(255,255,255,.8); }
.landing-v3 .photoshoot-view-switch button:active { transform:scale(.985); }
.landing-v3 .photoshoot-view-switch button:focus-visible { outline:2px solid rgba(242,70,16,.48); outline-offset:2px; }
.landing-v3 .photoshoot-view-switch svg { width:17px; height:17px; flex:0 0 auto; color:currentColor; }
.landing-v3 .photoshoot-view-switch span,.landing-v3 .photoshoot-view-switch b,.landing-v3 .photoshoot-view-switch small { display:block; min-width:0; }
.landing-v3 .photoshoot-view-switch span { text-align:left; }
.landing-v3 .photoshoot-view-switch b { font-size:13.5px; font-weight:750; line-height:1.1; }
.landing-v3 .photoshoot-view-switch small { margin-top:2px; color:#9a8f86; font-size:9.5px; font-weight:600; line-height:1.1; }
.landing-v3 .photoshoot-view-switch button[aria-selected="true"] svg { color:var(--orange-primary); }
.landing-v3 .photoshoot-view-switch button[aria-selected="true"] small { color:#9a6249; }
.landing-v3 .photoshoot-view-panel { margin-top:14px; }
.landing-v3 .photoshoot-view-panel[hidden] { display:none !important; }
.landing-v3 .photoshoot-view-panel.is-active { animation:photoshoot-view-in 300ms cubic-bezier(.22,1,.36,1) both; }
.landing-v3 .photoshoot-view-panel .photoshoot-result-strip { margin-top:0; }
.landing-v3 .photoshoot-catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
.landing-v3 .photoshoot-catalog-card {
  position:relative; min-width:0; aspect-ratio:3/4; padding:0; overflow:hidden; border:1px solid rgba(55,39,29,.1); border-radius:13px;
  color:#fff; background:#2a211b; box-shadow:0 7px 18px rgba(55,37,26,.09); cursor:pointer;
  transform:translate3d(0,0,0); transition:transform 210ms cubic-bezier(.22,1,.36,1),box-shadow 210ms ease,border-color 210ms ease;
}
.landing-v3 .photoshoot-catalog-card img { width:100%; height:100%; display:block; object-fit:cover; transition:transform 420ms cubic-bezier(.22,1,.36,1); }
.landing-v3 .photoshoot-catalog-card::after { content:""; position:absolute; inset:46% 0 0; background:linear-gradient(transparent,rgba(22,16,13,.86)); pointer-events:none; }
.landing-v3 .photoshoot-catalog-card span { position:absolute; z-index:2; right:7px; bottom:7px; left:7px; min-width:0; color:#fff; text-align:left; }
.landing-v3 .photoshoot-catalog-card b,.landing-v3 .photoshoot-catalog-card small { display:block; overflow:hidden; }
.landing-v3 .photoshoot-catalog-card b { font-size:11.5px; font-weight:760; line-height:1.15; letter-spacing:-.01em; text-overflow:ellipsis; white-space:nowrap; }
.landing-v3 .photoshoot-catalog-card small { margin-top:2px; color:rgba(255,255,255,.74); display:-webkit-box; font-size:8.5px; font-weight:560; line-height:1.18; white-space:normal; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.landing-v3 .photoshoot-catalog-card:active { transform:scale(.975); }
.landing-v3 .photoshoot-catalog-card:focus-visible { outline:2px solid var(--orange-primary); outline-offset:2px; }
.landing-v3 .photoshoot-catalog-help { margin:10px 0 0; color:#958a82; font-size:10px; font-weight:600; line-height:1.35; text-align:center; }
.landing-v3 .photoshoot-view-root + .middle-section-cta { margin-top:16px; }
@keyframes photoshoot-view-in { from { opacity:.55; transform:translate3d(0,6px,0) scale(.995); } to { opacity:1; transform:translate3d(0,0,0) scale(1); } }

@media (hover:hover) {
  .landing-v3 .photoshoot-view-switch button:hover:not([aria-selected="true"]) { color:#5c534d; background:rgba(255,255,255,.42); }
  .landing-v3 .photoshoot-catalog-card:hover { border-color:rgba(242,70,16,.34); box-shadow:0 10px 24px rgba(55,37,26,.13); transform:translate3d(0,-2px,0); }
  .landing-v3 .photoshoot-catalog-card:hover img { transform:scale(1.025); }
}

@media (max-width:340px) {
  .landing-v3 .photoshoot-view-switch button { padding:0 7px; gap:6px; }
  .landing-v3 .photoshoot-view-switch b { font-size:13px; }
  .landing-v3 .photoshoot-view-switch small { font-size:9px; }
  .landing-v3 .photoshoot-catalog-grid { gap:5px; }
  .landing-v3 .photoshoot-catalog-card { border-radius:11px; }
  .landing-v3 .photoshoot-catalog-card span { right:6px; bottom:6px; left:6px; }
  .landing-v3 .photoshoot-catalog-card b { font-size:10.5px; }
  .landing-v3 .photoshoot-catalog-card small { font-size:7.75px; }
}
.landing-v3 .photoshoot-chapter > .middle-section-cta { margin-top:16px; }

/* Honest, compact pricing controls */
.landing-v3 .landing-pricing-v4 { max-width:none; background:#f8f5f1; }
.landing-v3 .landing-pricing-v4 > h2 { margin-top:12px; max-width:690px; font-size:clamp(36px,10.5vw,47px); line-height:1; }
.landing-v3 .landing-pricing-v4 > h2 em { color:var(--orange-primary); font-style:normal; }
.landing-v3 .landing-pricing-v4 > .subtitle { margin-top:16px; color:#716861; font-size:15px; line-height:1.55; }
.landing-v3 .pricing-trust-chips { margin-top:20px; gap:8px; }
.landing-v3 .pricing-trust-chips li { min-height:44px; padding:8px 10px; }
.landing-v3 .pricing-offer-panel.is-static { margin-top:18px; min-height:58px; padding:12px 14px; display:flex; align-items:center; justify-content:space-between; gap:12px; border:1px solid rgba(237,75,18,.16); border-radius:17px; background:#fff8f3; }
.landing-v3 .pricing-offer-panel.is-static .pricing-offer-eyebrow { flex:none; }
.landing-v3 .pricing-offer-panel.is-static h3 { margin:0; color:#5d514a; font-size:12px; line-height:1.35; text-align:right; }
.landing-v3 .pricing-offer-panel.is-static time { color:#d64512; }
.landing-v3 .pricing-group-tabs {
  position:relative; min-height:54px; margin-top:22px; padding:4px; display:grid; grid-template-columns:repeat(2,1fr); gap:4px;
  border:1px solid rgba(69,50,37,.1); border-radius:18px; background:#ece7e1; box-shadow:inset 0 1px 2px rgba(52,38,29,.04);
}
.landing-v3 .pricing-group-tabs::before {
  content:""; position:absolute; z-index:0; top:4px; bottom:4px; left:4px; width:calc(50% - 6px); border-radius:14px;
  background:#fff; box-shadow:0 5px 15px rgba(62,43,31,.09); transform:translate3d(0,0,0); transition:transform 240ms cubic-bezier(.22,.8,.3,1);
}
.landing-v3 [data-pricing-section][data-pricing-group="series"] .pricing-group-tabs::before { transform:translate3d(calc(100% + 4px),0,0); }
.landing-v3 .pricing-group-tabs::after { content:none; }
.landing-v3 .pricing-group-tabs button { position:relative; z-index:1; min-width:0; min-height:46px; padding:0 8px; display:grid; place-items:center; border:0; background:transparent; color:#837970; cursor:pointer; }
.landing-v3 .pricing-group-tabs button > span { padding:0; border:0; background:transparent; box-shadow:none; transform:none; }
.landing-v3 .pricing-group-tabs button b { font-size:13px; font-weight:760; }
.landing-v3 .pricing-group-tabs button small { margin-top:2px; font-size:10px; font-weight:580; }
.landing-v3 .pricing-group-tabs button[aria-selected="true"] > span { color:#302925; border:0; background:transparent; box-shadow:none; transform:none; }
.landing-v3 .pricing-size-control { position:relative; width:min(300px,82%); min-height:56px; margin:16px auto 4px; display:flex; align-items:flex-start; justify-content:space-between; }
.landing-v3 .pricing-size-control::before { content:""; position:absolute; top:15px; right:20px; left:20px; height:2px; background:#ddd5ce; }
.landing-v3 .pricing-size-control button { position:relative; z-index:1; width:48px; min-height:52px; padding:0; display:grid; justify-items:center; align-content:start; gap:5px; border:0; color:#8a8078; background:transparent; cursor:pointer; }
.landing-v3 .pricing-size-control button[hidden] { display:none !important; }
.landing-v3 .pricing-size-control button i { width:14px; height:14px; border:3px solid #f8f5f1; border-radius:50%; background:#cec5bd; box-shadow:0 0 0 1px #c7bdb5; transition:transform 220ms ease,background 220ms ease,box-shadow 220ms ease; }
.landing-v3 .pricing-size-control button span { font-size:11px; font-weight:720; }
.landing-v3 .pricing-size-control button[aria-current="true"] { color:#d84310; }
.landing-v3 .pricing-size-control button[aria-current="true"] i { background:var(--orange-primary); box-shadow:0 0 0 1px var(--orange-primary),0 4px 12px rgba(231,70,14,.24); transform:scale(1.18); }
.landing-v3 .pricing-packages { margin:4px -20px 0 0; padding:8px 20px 12px 0; display:flex; gap:12px; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scroll-padding-left:0; overscroll-behavior-x:contain; touch-action:pan-x pan-y; scrollbar-width:none; }
.landing-v3 .pricing-packages::-webkit-scrollbar { display:none; }
.landing-v3 .pricing-package-card,
.landing-v3 .pricing-package-card.is-recommended { flex:0 0 calc(100vw - 40px); width:calc(100vw - 40px); min-height:430px; height:430px; padding:20px; display:grid; grid-template-columns:1fr auto; grid-template-areas:"top top" "title credits" "copy copy" "price price" "reference saving" "cta cta" "note note"; align-content:start; border:1px solid rgba(74,54,41,.1); border-radius:24px; background:#fff; box-shadow:0 10px 28px rgba(70,48,33,.07); scroll-snap-align:start; opacity:.78; transform:none; animation:none !important; transition:border-color 220ms ease,box-shadow 220ms ease,opacity 220ms ease,transform 220ms ease; }
.landing-v3 .pricing-package-card.is-selected { border-color:rgba(239,72,17,.72); box-shadow:0 0 0 1px rgba(239,72,17,.12),0 14px 34px rgba(113,55,30,.1); opacity:1; transform:none; }
.landing-v3 .pricing-package-top { grid-area:top; }
.landing-v3 .pricing-package-badge { min-height:28px; padding:0 10px; font-size:9px; letter-spacing:.055em; }
.landing-v3 .pricing-package-card h3 { grid-area:title; margin:16px 0 0; align-self:center; font-size:21px; }
.landing-v3 .pricing-package-credits { grid-area:credits; align-self:end; margin:12px 0 0 12px; white-space:nowrap; }
.landing-v3 .pricing-package-card > p { grid-area:copy; min-height:44px; margin:12px 0 0; font-size:13px; line-height:1.48; -webkit-line-clamp:2; }
.landing-v3 .pricing-package-price { grid-area:price; margin-top:16px; padding-top:16px; border-top:1px solid rgba(71,52,40,.08); }
.landing-v3 .pricing-package-price b { font-size:36px; }
.landing-v3 .pricing-reference-price { grid-area:reference; align-self:center; min-width:0; }
.landing-v3 .pricing-package-saving { grid-area:saving; align-self:center; justify-self:end; white-space:nowrap; }
.landing-v3 .pricing-card-cta { grid-area:cta; width:100%; min-height:58px; margin-top:20px; padding:0 10px 0 18px; display:flex; align-items:center; justify-content:space-between; gap:10px; border:1px solid rgba(255,255,255,.25); border-radius:19px; color:#fff; background:linear-gradient(135deg,#f44a0d,#dc3909); box-shadow:0 9px 20px rgba(202,58,12,.2),inset 0 1px rgba(255,255,255,.24); font:700 15px/1 Onest,system-ui,sans-serif; cursor:pointer; }
.landing-v3 .pricing-card-cta .cta-trailing { width:38px; height:38px; display:grid; place-items:center; flex:none; border-radius:13px; background:rgba(255,255,255,.13); }
.landing-v3 .pricing-card-cta svg { width:18px; height:18px; }
.landing-v3 .pricing-payment-note { grid-area:note; margin-top:10px; color:#8b8179; font-size:10px; text-align:center; }

.landing-v3 .identity-benefits { gap:10px; }
.landing-v3 .identity-benefits article { min-height:92px; }
.landing-v3 .identity-examples { margin-right:-20px; }
.landing-v3 .compact-how-v2 ol li { min-height:112px; box-shadow:0 8px 22px rgba(65,45,32,.055); }
.landing-v3 .landing-faq-compact details { border-color:rgba(62,45,34,.09); }
.landing-v3 .landing-final-v3 { padding-bottom:max(86px,calc(72px + var(--safe-bottom))); }

@media (hover:hover) and (pointer:fine) {
  .landing-v3 .pricing-card-cta:hover { transform:translateY(-2px); box-shadow:0 12px 26px rgba(202,58,12,.25),inset 0 1px rgba(255,255,255,.28); }
  .landing-v3 .pricing-card-cta:hover .cta-trailing { transform:translateX(3px); }
}
.landing-v3 .pricing-card-cta:active { transform:translateY(1px) scale(.985); box-shadow:0 5px 12px rgba(202,58,12,.18); }

@media (max-width:340px) {
  .landing-v3 .landing-hero-v3,
  .landing-v3 .smart-fix-compact,
  .landing-v3 .photoshoot-chapter,
  .landing-v3 .landing-pricing-v4,
  .landing-v3 .identity-trust,
  .landing-v3 .compact-how-v2,
  .landing-v3 .landing-faq-compact,
  .landing-v3 .landing-final-v3 { padding-right:16px; padding-left:16px; }
  .landing-v3 .photoshoot-result-strip,.landing-v3 .pricing-packages { margin-right:-16px; }
  .landing-v3 .pricing-packages { padding-right:16px; }
  .landing-v3 .pricing-package-card,.landing-v3 .pricing-package-card.is-recommended { flex-basis:calc(100vw - 32px); width:calc(100vw - 32px); padding:16px; }
  .landing-v3 .pricing-package-card h3 { font-size:19px; }
  .landing-v3 .pricing-package-credits { font-size:10px; }
  .landing-v3 .pricing-card-cta { font-size:14px; }
  .landing-v3 .smart-fix-proof-lines { align-items:flex-start; flex-direction:column; gap:4px; }
}

@media (min-width:900px) {
  body:has(.landing-v3) { padding:0; }
  #app:has(.landing-v3) { width:100%; max-width:none; min-height:100dvh; border-radius:0; box-shadow:none; overflow:visible; }
  #app:has(.landing-v3) .screen { min-height:100dvh; }
  .landing-v3 .marketing-header { min-height:76px; padding:8px max(32px,calc((100vw - 1180px)/2)); }
  .landing-v3 .desktop-marketing-nav { display:flex; align-items:center; gap:4px; }
  .landing-v3 .desktop-marketing-nav button { min-height:44px; padding:0 12px; border:0; color:#625a54; background:transparent; font-size:13px; font-weight:650; cursor:pointer; }
  .landing-v3 .marketing-header .icon-button.compact { display:none; }
  .landing-v3 .marketing-header .header-entry { display:inline-flex; }
  .landing-v3 .landing-hero-v3,
  .landing-v3 .smart-fix-compact,
  .landing-v3 .photoshoot-chapter,
  .landing-v3 .landing-pricing-v4,
  .landing-v3 .identity-trust,
  .landing-v3 .compact-how-v2,
  .landing-v3 .landing-faq-compact,
  .landing-v3 .landing-final-v3 { max-width:1180px; margin-right:auto; margin-left:auto; padding-right:40px; padding-left:40px; }
  .landing-v3 .smart-fix-compact,
  .landing-v3 .photoshoot-chapter,
  .landing-v3 .landing-pricing-v4,
  .landing-v3 .identity-trust,
  .landing-v3 .compact-how-v2,
  .landing-v3 .landing-faq-compact,
  .landing-v3 .landing-final-v3 { padding-top:96px; padding-bottom:96px; }
  .landing-v3 .landing-hero-v3 { min-height:710px; padding-top:72px; display:grid; grid-template-columns:minmax(0,.82fr) minmax(480px,1.18fr); grid-template-areas:"eyebrow switch" "title visual" "copy visual" "action visual" "trust visual"; column-gap:72px; align-content:center; }
  .landing-v3 .landing-hero-v3 .hero-category { grid-area:eyebrow; align-self:end; }
  .landing-v3 .landing-hero-v3 h1 { grid-area:title; margin:18px 0 0; font-size:clamp(65px,6vw,86px); }
  .landing-v3 .landing-hero-v3 .hero-copy { grid-area:copy; font-size:18px; }
  .landing-v3 .hero-product-switch { grid-area:switch; align-self:end; margin:0; }
  .landing-v3 .hero-showcase { grid-area:visual; align-self:start; margin-top:16px; }
  .landing-v3 .hero-action-stage { grid-area:action; margin-top:24px; }
  .landing-v3 .hero-trust-note { grid-area:trust; }
  .landing-v3 .smart-fix-compact { display:grid; grid-template-columns:minmax(300px,.72fr) minmax(440px,1.28fr); grid-template-areas:"head visual" "proof visual" "cta visual"; column-gap:72px; align-items:center; }
  .landing-v3 .smart-fix-compact .middle-section-head { grid-area:head; }
  .landing-v3 .smart-fix-compact-visual { grid-area:visual; margin:0; max-width:590px; }
  .landing-v3 .smart-fix-proof-lines { grid-area:proof; margin:20px 0 0; align-items:flex-start; flex-direction:column; gap:5px; }
  .landing-v3 .smart-fix-compact > .middle-section-cta { grid-area:cta; margin:20px 0 0; }
  .landing-v3 .photoshoot-chapter { display:grid; grid-template-columns:330px minmax(0,1fr); grid-template-areas:"head head" "source results" "choice results" "cta results"; column-gap:54px; align-items:start; }
  .landing-v3 .photoshoot-chapter .middle-section-head { grid-area:head; }
  .landing-v3 .photoshoot-source { grid-area:source; }
  .landing-v3 .photoshoot-view-root { grid-area:results; margin:26px 0 0; }
  .landing-v3 .photoshoot-view-switch { max-width:590px; }
  .landing-v3 .photoshoot-result-strip { margin:0; padding:0; }
  .landing-v3 .photoshoot-result-card { flex-basis:420px; max-width:420px; }
  .landing-v3 .photoshoot-strip-nav { display:none; }
  .landing-v3 .photoshoot-catalog-grid { max-width:590px; gap:10px; }
  .landing-v3 .photoshoot-catalog-card { border-radius:18px; }
  .landing-v3 .photoshoot-catalog-card b { font-size:13px; }
  .landing-v3 .photoshoot-catalog-card small { font-size:9px; }
  .landing-v3 .photoshoot-choice-compact { grid-area:choice; margin:16px 0 0; }
  .landing-v3 .photoshoot-chapter > .middle-section-cta { grid-area:cta; margin-top:16px; }
  .landing-v3 .pricing-packages { margin:12px 0 0; padding:8px 0 12px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:visible; }
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-package-card.is-recommended { width:auto; min-height:430px; height:430px; padding:22px; opacity:1; transform:none; }
  .landing-v3 .pricing-size-control { width:320px; }
  .landing-v3 .identity-benefits,.landing-v3 .compact-how-v2 ol { grid-template-columns:repeat(3,1fr); }
  .landing-v3 .identity-examples { margin-right:0; }
  .landing-v3 .landing-faq-compact { display:grid; grid-template-columns:360px minmax(0,1fr); column-gap:72px; align-items:start; }
  .landing-v3 .landing-faq-compact > .eyebrow,.landing-v3 .landing-faq-compact > h2 { grid-column:1; }
  .landing-v3 .landing-faq-compact .faq-list { grid-column:2; grid-row:1 / span 3; margin:0; }
  .landing-v3 .landing-final-v3 { text-align:center; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-group-tabs::before,
  .landing-v3 .pricing-size-control button i,
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-card-cta,
  .landing-v3 .photoshoot-view-switch button,
  .landing-v3 .photoshoot-view-panel,
  .landing-v3 .photoshoot-catalog-card,
  .landing-v3 .photoshoot-catalog-card img { transition:none !important; animation:none !important; }
}

/* Pricing 10/10 · single active package · mobile first */
.landing-v3 .landing-pricing-v4 {
  padding-top:58px;
  padding-bottom:54px;
}
.landing-v3 .landing-pricing-v4 > h2 {
  max-width:620px;
  margin-top:10px;
  font-size:clamp(31px,9.2vw,42px);
  line-height:1.035;
  letter-spacing:-.052em;
}
.landing-v3 .landing-pricing-v4 > .subtitle {
  max-width:520px;
  margin-top:13px;
  font-size:13px;
  line-height:1.48;
}
.landing-v3 .pricing-trust-chips {
  margin-top:16px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}
.landing-v3 .pricing-trust-chips li {
  min-width:0;
  min-height:40px;
  padding:7px 9px;
  gap:6px;
  border-radius:13px;
  font-size:10px;
  line-height:1.18;
}
.landing-v3 .pricing-trust-chips li:last-child { grid-column:1 / -1; }
.landing-v3 .pricing-trust-chips svg { width:14px; height:14px; flex:none; }
.landing-v3 .pricing-offer-panel.is-static {
  min-height:52px;
  margin-top:14px;
  padding:10px 12px;
  border-radius:15px;
}
.landing-v3 .pricing-offer-panel.is-static h3 { font-size:11px; }
.landing-v3 .pricing-group-tabs {
  min-height:58px;
  margin-top:18px;
  border-radius:18px;
}
.landing-v3 .pricing-group-tabs::before { border-radius:14px; }
.landing-v3 .pricing-group-tabs button { min-height:48px; }
.landing-v3 .pricing-group-tabs button b { font-size:12.5px; }
.landing-v3 .pricing-group-tabs button small { font-size:9.5px; }
.landing-v3 .pricing-choice-head {
  margin-top:17px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#3e3631;
}
.landing-v3 .pricing-choice-head b { font-size:13px; font-weight:760; }
.landing-v3 .pricing-choice-head span { color:#877c74; font-size:10.5px; font-weight:620; }
.landing-v3 .pricing-size-control {
  width:100%;
  min-height:52px;
  margin:8px 0 0;
  display:flex;
  align-items:stretch;
  justify-content:stretch;
  gap:8px;
}
.landing-v3 .pricing-size-control::before { content:none; }
.landing-v3 .pricing-size-control button {
  width:auto;
  min-width:0;
  min-height:52px;
  flex:1 1 0;
  padding:0 8px;
  display:grid;
  place-items:center;
  border:1px solid rgba(67,48,36,.1);
  border-radius:15px;
  color:#665c55;
  background:rgba(255,255,255,.72);
  box-shadow:inset 0 1px rgba(255,255,255,.8),0 4px 12px rgba(67,46,32,.035);
  transition:color 200ms ease,border-color 200ms ease,background 200ms ease,box-shadow 220ms ease,transform 180ms ease;
}
.landing-v3 .pricing-size-control button span { font-size:12px; font-weight:700; white-space:nowrap; }
.landing-v3 .pricing-size-control button[aria-current="true"] {
  color:#fff;
  border-color:#e64912;
  background:linear-gradient(145deg,#f15b22,#df3f0c);
  box-shadow:0 8px 18px rgba(207,61,11,.2),inset 0 1px rgba(255,255,255,.24);
  transform:translateY(-1px);
}
.landing-v3 .pricing-size-control button:active { transform:translateY(1px) scale(.985); }
.landing-v3 .pricing-packages {
  width:100%;
  min-height:0;
  margin:13px 0 0;
  padding:0;
  display:block;
  overflow:visible;
  touch-action:auto;
}
.landing-v3 .pricing-package-card,
.landing-v3 .pricing-package-card.is-recommended {
  width:100%;
  min-width:0;
  min-height:0;
  height:auto;
  padding:19px;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(67,48,36,.12);
  border-radius:23px;
  background:linear-gradient(180deg,#fff 0%,#fffdfa 100%);
  box-shadow:0 12px 30px rgba(70,47,32,.075),inset 0 1px rgba(255,255,255,.9);
  opacity:1;
  transform:none;
  scroll-snap-align:none;
}
.landing-v3 .pricing-package-card.is-selected {
  border-color:rgba(235,71,15,.58);
  box-shadow:0 0 0 1px rgba(235,71,15,.08),0 15px 34px rgba(89,51,29,.09),inset 0 1px rgba(255,255,255,.96);
}
.landing-v3 .pricing-package-card.is-card-entering { animation:pricingActiveCardIn 360ms cubic-bezier(.22,.85,.28,1) both !important; }
@keyframes pricingActiveCardIn {
  0% { opacity:.62; transform:translate3d(0,9px,0) scale(.988); }
  72% { opacity:1; transform:translate3d(0,-1px,0) scale(1.002); }
  100% { opacity:1; transform:none; }
}
.landing-v3 .pricing-package-top {
  min-height:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.landing-v3 .pricing-package-badge {
  min-height:27px;
  padding:0 10px;
  border-radius:999px;
  font-size:8.5px;
  letter-spacing:.07em;
}
.landing-v3 .pricing-package-check { width:36px; height:36px; }
.landing-v3 .pricing-package-heading {
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.landing-v3 .pricing-package-card h3 {
  margin:0;
  font-size:21px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.landing-v3 .pricing-package-credits {
  margin:0;
  padding:7px 10px;
  flex:none;
  border:1px solid rgba(68,49,37,.08);
  border-radius:999px;
  color:#564d47;
  background:#f5f1ed;
  font-size:10px;
  line-height:1;
  white-space:nowrap;
}
.landing-v3 .pricing-package-card > p {
  min-height:0;
  margin:9px 0 0;
  color:#786e67;
  font-size:12px;
  line-height:1.42;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.landing-v3 .pricing-package-price {
  margin-top:14px;
  padding-top:13px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid rgba(70,51,39,.08);
}
.landing-v3 .pricing-package-price b {
  color:#29231f;
  font-size:42px;
  line-height:.95;
  letter-spacing:-.06em;
}
.landing-v3 .pricing-package-price span {
  padding-bottom:3px;
  color:#776d66;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.landing-v3 .pricing-package-value {
  min-height:34px;
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.landing-v3 .pricing-package-value:empty { display:none; }
.landing-v3 .pricing-package-value .pricing-reference-price {
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:3px 6px;
  color:#8b8179;
  font-size:9.5px;
  line-height:1.25;
}
.landing-v3 .pricing-package-value .pricing-reference-price s { color:#81766e; font-size:11px; font-weight:720; }
.landing-v3 .pricing-package-value .pricing-package-saving {
  min-height:29px;
  padding:0 9px;
  display:flex;
  align-items:center;
  gap:4px;
  flex:none;
  border:1px solid rgba(231,77,21,.13);
  border-radius:999px;
  color:#a34a28;
  background:#fff0e8;
  font-size:9px;
  line-height:1;
  white-space:nowrap;
}
.landing-v3 .pricing-package-value .pricing-package-saving b { color:#d84610; }
.landing-v3 .pricing-package-value .pricing-package-saving span { color:#c85a31; font-weight:750; }
.landing-v3 .pricing-card-cta {
  min-height:59px;
  margin-top:15px;
  padding-left:17px;
  border-radius:19px;
  font-size:14.5px;
}
.landing-v3 .pricing-payment-note { margin-top:9px; font-size:9.5px; }
.landing-v3 .pricing-mobile-sticky { display:none; }

@media (max-width:899px) {
  .landing-v3 .pricing-mobile-sticky {
    width:min(calc(100vw - 32px),398px);
    min-height:66px;
    padding:9px 9px 9px 15px;
    position:fixed;
    z-index:70;
    right:50%;
    bottom:max(10px,calc(8px + env(safe-area-inset-bottom)));
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    border:1px solid rgba(77,55,41,.12);
    border-radius:20px;
    background:rgba(255,252,249,.94);
    -webkit-backdrop-filter:blur(18px) saturate(1.15);
    backdrop-filter:blur(18px) saturate(1.15);
    box-shadow:0 16px 38px rgba(45,30,20,.18),inset 0 1px rgba(255,255,255,.9);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate3d(50%,18px,0) scale(.97);
    transition:opacity 210ms ease,visibility 210ms ease,transform 300ms cubic-bezier(.22,.82,.3,1);
  }
  .landing-v3 .pricing-mobile-sticky.is-visible {
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate3d(50%,0,0) scale(1);
  }
  .landing-v3 .pricing-mobile-sticky span { min-width:0; }
  .landing-v3 .pricing-mobile-sticky b,.landing-v3 .pricing-mobile-sticky small { display:block; }
  .landing-v3 .pricing-mobile-sticky b { color:#302824; font-size:13px; line-height:1.2; }
  .landing-v3 .pricing-mobile-sticky small { margin-top:3px; color:#8a7f77; font-size:9px; }
  .landing-v3 .pricing-mobile-sticky button {
    min-width:96px;
    min-height:46px;
    padding:0 15px;
    border:0;
    border-radius:15px;
    color:#fff;
    background:linear-gradient(145deg,#f15a20,#df3e0b);
    box-shadow:0 7px 16px rgba(203,58,10,.2),inset 0 1px rgba(255,255,255,.23);
    font-size:12px;
    font-weight:750;
  }
}

@media (max-width:340px) {
  .landing-v3 .landing-pricing-v4 { padding-top:54px; padding-bottom:50px; }
  .landing-v3 .landing-pricing-v4 > h2 { font-size:29px; }
  .landing-v3 .pricing-trust-chips li { padding-right:7px; padding-left:7px; font-size:9px; }
  .landing-v3 .pricing-package-card,.landing-v3 .pricing-package-card.is-recommended { width:100%; padding:16px; }
  .landing-v3 .pricing-package-heading { align-items:flex-start; flex-direction:column; gap:7px; }
  .landing-v3 .pricing-package-card h3 { font-size:20px; }
  .landing-v3 .pricing-package-price b { font-size:39px; }
  .landing-v3 .pricing-package-value { align-items:flex-start; flex-direction:column; }
  .landing-v3 .pricing-card-cta { padding-left:14px; font-size:13.5px; }
}

@media (min-width:900px) {
  .landing-v3 .landing-pricing-v4 { max-width:780px !important; padding-top:92px; padding-bottom:92px; }
  .landing-v3 .landing-pricing-v4 > h2 { max-width:720px; font-size:48px; }
  .landing-v3 .landing-pricing-v4 > .subtitle { font-size:15px; }
  .landing-v3 .pricing-trust-chips { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .landing-v3 .pricing-trust-chips li:last-child { grid-column:auto; }
  .landing-v3 .pricing-group-tabs,.landing-v3 .pricing-choice-head,.landing-v3 .pricing-size-control { max-width:560px; margin-right:auto; margin-left:auto; }
  .landing-v3 .pricing-choice-head { margin-top:20px; }
  .landing-v3 .pricing-packages { margin-top:15px; display:block; }
  .landing-v3 .pricing-package-card,.landing-v3 .pricing-package-card.is-recommended { max-width:620px; min-height:0; height:auto; margin:0 auto; padding:26px; }
  .landing-v3 .pricing-package-card h3 { font-size:25px; }
  .landing-v3 .pricing-package-price b { font-size:50px; }
  .landing-v3 .pricing-card-cta { font-size:16px; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-size-control button,
  .landing-v3 .pricing-package-card.is-card-entering,
  .landing-v3 .pricing-mobile-sticky { transition:none !important; animation:none !important; }
}

/* Pricing mobile UX refinement */
@media (max-width:899px) {
  .landing-v3 .pricing-offer-panel.is-static {
    margin-top:20px;
  }
  .landing-v3 .pricing-group-tabs {
    height:54px;
    min-height:54px;
    margin-top:18px;
    padding:4px;
    border-radius:18px;
  }
  .landing-v3 .pricing-group-tabs::before {
    top:4px;
    bottom:4px;
    left:4px;
    width:calc(50% - 6px);
    border-radius:14px;
    background:#fffdfa;
    box-shadow:0 5px 14px rgba(62,43,31,.08);
  }
  .landing-v3 .pricing-group-tabs::after { content:none !important; }
  .landing-v3 .pricing-group-tabs button {
    height:46px;
    min-height:46px;
    padding:0 7px;
    background:transparent !important;
  }
  .landing-v3 .pricing-group-tabs button > i { display:none; }
  .landing-v3 .pricing-group-tabs button > span,
  .landing-v3 .pricing-group-tabs button[aria-selected="true"] > span {
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    transform:none !important;
  }
  .landing-v3 .pricing-group-tabs button b {
    font-size:15px;
    font-weight:690;
    line-height:1.1;
  }
  .landing-v3 .pricing-group-tabs button small {
    margin-top:3px;
    font-size:12px;
    font-weight:570;
    line-height:1;
  }
  .landing-v3 .pricing-choice-head {
    margin-top:20px;
  }
  .landing-v3 .pricing-choice-head b {
    font-size:15px;
    font-weight:700;
  }
  .landing-v3 .pricing-choice-head span { display:none; }
  .landing-v3 .pricing-size-control {
    height:52px;
    min-height:52px;
    margin-top:8px;
    gap:8px;
  }
  .landing-v3 .pricing-size-control button {
    height:52px;
    min-height:52px;
    padding:0 8px;
    border-radius:15px;
    box-shadow:inset 0 1px rgba(255,255,255,.82),0 3px 9px rgba(67,46,32,.035);
  }
  .landing-v3 .pricing-size-control button span {
    font-size:15px;
    font-weight:680;
  }
  .landing-v3 .pricing-size-control button[aria-current="true"] {
    box-shadow:inset 0 1px rgba(255,255,255,.24),0 5px 12px rgba(207,61,11,.13);
    transform:none;
  }
  .landing-v3 .pricing-packages {
    margin-top:20px;
  }
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-package-card.is-recommended {
    position:relative;
    padding:20px;
  }
  .landing-v3 .pricing-package-top {
    min-height:27px;
  }
  .landing-v3 .pricing-package-check {
    width:48px;
    height:48px;
    position:absolute;
    top:18px;
    right:18px;
  }
  .landing-v3 .pricing-package-heading {
    margin-top:16px;
  }
  .landing-v3 .pricing-package-card > p {
    margin-top:10px;
    -webkit-line-clamp:2;
  }
  .landing-v3 .pricing-package-price {
    margin-top:16px;
    padding-top:16px;
  }
  .landing-v3 .pricing-package-value {
    margin-top:14px;
  }
  .landing-v3 .pricing-card-cta {
    width:100%;
    height:58px;
    min-height:58px;
    margin-top:16px;
    padding:0 10px 0 18px;
    border-radius:18px;
    font-size:clamp(14px,4.15vw,17px);
    font-weight:700;
  }
  .landing-v3 .pricing-card-cta .cta-label { white-space:nowrap; }
  .landing-v3 .pricing-card-cta .cta-trailing {
    width:38px;
    height:38px;
    flex:0 0 38px;
    border-radius:50%;
    background:rgba(255,255,255,.12);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
  }
  .landing-v3 .pricing-mobile-sticky {
    width:min(calc(100vw - 32px),398px);
    min-height:68px;
    padding:10px 12px;
    bottom:max(12px,calc(10px + env(safe-area-inset-bottom)));
    border-radius:18px;
    box-shadow:0 12px 30px rgba(45,30,20,.14),inset 0 1px rgba(255,255,255,.9);
  }
  .landing-v3 .pricing-mobile-sticky b {
    font-size:15px;
    font-weight:700;
  }
  .landing-v3 .pricing-mobile-sticky button {
    width:116px;
    min-width:116px;
    height:48px;
    min-height:48px;
    padding:0 12px;
    border-radius:14px;
    font-size:15px;
    font-weight:700;
  }
}

@media (max-width:340px) {
  .landing-v3 .pricing-group-tabs button b { font-size:14px; }
  .landing-v3 .pricing-group-tabs button small { font-size:11px; }
  .landing-v3 .pricing-size-control button span { font-size:14px; }
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-package-card.is-recommended { padding:20px; }
  .landing-v3 .pricing-package-heading {
    align-items:center;
    flex-direction:row;
    gap:8px;
  }
  .landing-v3 .pricing-card-cta {
    padding-left:14px;
    font-size:13.5px;
    gap:4px;
  }
  .landing-v3 .pricing-card-cta .cta-trailing {
    width:28px;
    height:28px;
    flex-basis:28px;
    background:transparent;
    box-shadow:none;
  }
  .landing-v3 .pricing-card-cta .cta-label { letter-spacing:-.02em; }
  .landing-v3 .pricing-mobile-sticky b { font-size:14px; }
  .landing-v3 .pricing-mobile-sticky button {
    width:108px;
    min-width:108px;
    font-size:14px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-group-tabs::before,
  .landing-v3 .pricing-mobile-sticky { transition:none !important; }
}

@media (max-width:899px) {
  .landing-v3.landing-app-home .pricing-mobile-sticky {
    bottom:calc(96px + env(safe-area-inset-bottom));
  }
}

/* Pricing scenario control · compact premium mobile segmented control */
@media (max-width:899px) {
  .landing-v3 .pricing-group-tabs {
    position:relative;
    width:100%;
    height:54px;
    min-height:54px;
    margin-top:18px;
    padding:4px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:1fr;
    gap:4px;
    overflow:hidden;
    border:1px solid rgba(67,48,36,.09);
    border-radius:18px;
    background:#eee9e4;
    box-shadow:inset 0 1px 2px rgba(51,35,25,.04),0 7px 20px rgba(76,51,35,.035);
  }
  .landing-v3 .pricing-group-tabs::before {
    content:"";
    position:absolute;
    z-index:0;
    top:4px;
    bottom:4px;
    left:4px;
    width:calc(50% - 6px);
    height:auto !important;
    border:1px solid rgba(73,52,39,.07);
    border-radius:14px;
    background:#fffdfa;
    box-shadow:0 5px 15px rgba(62,43,31,.085),inset 0 1px rgba(255,255,255,.92);
    transform:translate3d(0,0,0) !important;
    transition:transform 300ms cubic-bezier(.22,.85,.28,1),box-shadow 220ms ease;
  }
  .landing-v3 [data-pricing-section][data-pricing-group="series"] .pricing-group-tabs::before {
    transform:translate3d(calc(100% + 4px),0,0) !important;
  }
  .landing-v3 .pricing-group-tabs::after { content:none !important; }
  .landing-v3 .pricing-group-tabs button {
    position:relative;
    z-index:1;
    grid-row:1 !important;
    width:100%;
    height:46px;
    min-height:46px;
    padding:0 7px;
    display:grid;
    grid-template-rows:1fr !important;
    place-items:center;
    gap:0;
    border:0;
    border-radius:14px;
    color:#81776f;
    background:transparent !important;
    transition:color 220ms ease,transform 180ms cubic-bezier(.22,.85,.28,1);
  }
  .landing-v3 .pricing-group-tabs button > i { display:none !important; }
  .landing-v3 .pricing-group-tabs button > span,
  .landing-v3 .pricing-group-tabs button[aria-selected="true"] > span {
    width:100%;
    min-height:0;
    padding:0 !important;
    display:grid;
    align-content:center;
    gap:2px;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    transform:none !important;
  }
  .landing-v3 .pricing-group-tabs button b {
    color:inherit;
    font-size:14px;
    font-weight:700;
    line-height:1.08;
    letter-spacing:-.02em;
  }
  .landing-v3 .pricing-group-tabs button small {
    margin:0;
    color:#998e86;
    font-size:10.5px;
    font-weight:580;
    line-height:1;
  }
  .landing-v3 .pricing-group-tabs button[aria-selected="true"] { color:#302925; }
  .landing-v3 .pricing-group-tabs button[aria-selected="true"] small { color:#b5522e; }
  .landing-v3 .pricing-group-tabs button:active { transform:scale(.985); }
  .landing-v3 .pricing-group-tabs button:focus-visible { outline:2px solid rgba(238,72,18,.4); outline-offset:-4px; }
}

@media (max-width:340px) {
  .landing-v3 .pricing-group-tabs button { padding:0 5px; }
  .landing-v3 .pricing-group-tabs button b { font-size:13.5px; }
  .landing-v3 .pricing-group-tabs button small { font-size:10px; }
}

@media (hover:hover) and (pointer:fine) {
  .landing-v3 .pricing-group-tabs button:not([aria-selected="true"]):hover { color:#5e554f; }
}

/* Pricing quantity control · draggable mobile slider */
.landing-v3 .pricing-size-track { display:none; }

@media (max-width:899px) {
  .landing-v3 .pricing-choice-head { margin-top:16px; }
  .landing-v3 .pricing-choice-head b {
    font-size:14px;
    line-height:1.15;
  }
  .landing-v3 .pricing-size-control {
    --pricing-count:3;
    --pricing-progress:0;
    position:relative;
    height:52px;
    min-height:52px;
    margin-top:5px;
    padding:0;
    display:grid;
    grid-template-columns:repeat(var(--pricing-count),minmax(0,1fr));
    gap:0;
    overflow:visible;
    touch-action:pan-y;
    user-select:none;
    -webkit-user-select:none;
    cursor:grab;
  }
  .landing-v3 .pricing-size-track {
    position:absolute;
    z-index:0;
    top:10px;
    left:calc(50% / var(--pricing-count));
    right:calc(50% / var(--pricing-count));
    height:3px;
    display:block;
    border-radius:999px;
    background:#d9d1ca;
    box-shadow:inset 0 1px 1px rgba(57,39,28,.08);
  }
  .landing-v3 .pricing-size-track > span {
    position:absolute;
    inset:0 auto 0 0;
    width:calc(var(--pricing-progress) * 100%);
    border-radius:inherit;
    background:#ea4b16;
    transition:width 260ms cubic-bezier(.22,.85,.28,1);
  }
  .landing-v3 .pricing-size-track > i {
    position:absolute;
    top:50%;
    left:calc(var(--pricing-progress) * 100%);
    width:20px;
    height:20px;
    border:4px solid #fffaf6;
    border-radius:50%;
    background:#ed4b15;
    box-shadow:0 3px 10px rgba(207,61,11,.2),0 0 0 1px rgba(218,63,12,.2);
    transform:translate3d(-50%,-50%,0);
    transition:left 300ms cubic-bezier(.22,.85,.28,1),transform 180ms ease,box-shadow 180ms ease;
  }
  .landing-v3 .pricing-size-control.is-dragging .pricing-size-track > span,
  .landing-v3 .pricing-size-control.is-dragging .pricing-size-track > i { transition:none; }
  .landing-v3 .pricing-size-control.is-dragging .pricing-size-track > i {
    transform:translate3d(-50%,-50%,0) scale(1.08);
    box-shadow:0 4px 13px rgba(207,61,11,.24),0 0 0 1px rgba(218,63,12,.22);
  }
  .landing-v3 .pricing-size-control.is-dragging { cursor:grabbing; }
  .landing-v3 .pricing-size-control button {
    position:relative;
    z-index:1;
    width:100%;
    height:52px;
    min-height:44px;
    padding:0 2px;
    display:grid;
    grid-template-rows:23px 1fr;
    place-items:start center;
    border:0;
    border-radius:10px;
    color:#81766f;
    background:transparent !important;
    box-shadow:none !important;
    transform:none !important;
  }
  .landing-v3 .pricing-size-control button i {
    width:9px;
    height:9px;
    margin-top:7px;
    border:2px solid #f8f3ee;
    border-radius:50%;
    background:#cfc6bf;
    box-shadow:0 0 0 1px rgba(108,84,69,.14);
    transition:opacity 180ms ease,background 180ms ease;
  }
  .landing-v3 .pricing-size-control button span {
    align-self:end;
    color:inherit;
    font-size:12.5px;
    font-weight:650;
    line-height:1.1;
    letter-spacing:-.01em;
  }
  .landing-v3 .pricing-size-control button[aria-current="true"] {
    color:#d84310;
  }
  .landing-v3 .pricing-size-control button[aria-current="true"] i {
    opacity:0;
  }
  .landing-v3 .pricing-size-control button:focus-visible { outline:none; }
  .landing-v3 .pricing-size-control button:focus-visible span {
    outline:2px solid rgba(232,71,17,.35);
    outline-offset:4px;
    border-radius:4px;
  }
}

@media (max-width:340px) {
  .landing-v3 .pricing-size-control button span { font-size:12px; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-size-track > span,
  .landing-v3 .pricing-size-track > i { transition:none !important; }
}

/* Pricing packages · mobile swipe carousel synced with the quantity slider */
@media (max-width:899px) {
  .landing-v3 .pricing-packages {
    width:calc(100% + 20px);
    margin:13px -20px 0 0;
    padding:0 20px 10px 0;
    display:flex;
    align-items:stretch;
    gap:10px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-padding-left:0;
    overscroll-behavior-x:contain;
    touch-action:pan-y;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    cursor:grab;
  }
  .landing-v3 .pricing-packages::-webkit-scrollbar { display:none; }
  .landing-v3 .pricing-package-card,
  .landing-v3 .pricing-package-card.is-recommended {
    flex:0 0 calc(100% - 26px);
    width:calc(100% - 26px);
    min-width:0;
    align-self:stretch;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    opacity:.7;
    transform:translate3d(0,8px,0) scale(.96);
    transform-origin:50% 54%;
    backface-visibility:hidden;
    will-change:transform,opacity;
    transition:border-color 220ms ease,box-shadow 260ms ease,opacity 180ms ease,transform 260ms cubic-bezier(.22,.85,.28,1);
  }
  .landing-v3 .pricing-package-card.is-selected {
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
  }
  .landing-v3 .pricing-packages.is-dragging {
    scroll-snap-type:none;
    cursor:grabbing;
  }
  .landing-v3 .pricing-packages.is-dragging .pricing-package-card,
  .landing-v3 .pricing-packages.is-settling .pricing-package-card {
    transition-property:border-color,box-shadow;
  }
  .landing-v3 .pricing-packages.is-settling {
    scroll-snap-type:none;
    pointer-events:none;
  }
}

@media (min-width:900px) {
  .landing-v3 .pricing-package-card:not(.is-selected) { display:none !important; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .pricing-package-card { transition:none !important; }
}

/* Compact product Hero: both products share one dense, stable geometry. */
.landing-v3 .landing-hero-v3.hero-expanded-layout {
  padding-top:26px;
  padding-bottom:34px;
}
.landing-v3 .landing-hero-v3.hero-expanded-layout h1 {
  margin-top:15px;
}
@media (max-width:899px) {
  .landing-v3 .landing-hero-v3.hero-expanded-layout h1 {
    font-size:clamp(47px,13.7vw,60px);
    line-height:.92;
  }
  .landing-v3 .landing-hero-v3.hero-expanded-layout .hero-dynamic-copy {
    margin-top:10px;
  }
}
.landing-v3 .hero-dynamic-copy {
  width:100%;
  margin-top:13px;
}
.landing-v3 .hero-dynamic-copy > div[hidden] {
  display:none !important;
}
.landing-v3 .hero-dynamic-copy > div:not([hidden]) {
  animation:hero-expanded-pane-in 180ms cubic-bezier(.22,1,.36,1) both;
}
.landing-v3 .hero-dynamic-copy strong {
  display:block;
  max-width:560px;
  color:#2d2926;
  font-size:clamp(18px,4.6vw,20px);
  font-weight:740;
  line-height:1.12;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.landing-v3 .hero-dynamic-copy p {
  margin:5px 0 0;
  min-height:2.84em;
  max-width:560px;
  color:#716961;
  font-size:13px;
  line-height:1.42;
  text-wrap:pretty;
}
.landing-v3 .hero-expanded-layout .hero-product-switch {
  margin-top:12px;
}
.landing-v3 .hero-expanded-products {
  width:100%;
  margin-top:10px;
}
.landing-v3 .hero-expanded-pane {
  min-width:0;
}
.landing-v3 .hero-expanded-pane[hidden] {
  display:none !important;
}
.landing-v3 .hero-expanded-pane.is-active {
  animation:hero-expanded-pane-in 220ms cubic-bezier(.22,1,.36,1) both;
}
.landing-v3 .hero-compact-state {
  width:100%;
  display:grid;
  gap:0;
}
.landing-v3 .hero-compact-demo {
  box-sizing:border-box;
  width:100%;
  height:clamp(248px,calc((100vw - 40px) * .72),286px) !important;
  min-height:0;
  margin-top:10px;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(65,48,37,.09);
  border-radius:24px;
  background:linear-gradient(145deg,#fffaf6 0%,#f4e9e1 100%);
  box-shadow:0 16px 38px rgba(42,29,20,.095),inset 0 1px rgba(255,255,255,.9);
  transform:translateZ(0);
}
.landing-v3 .hero-compact-smart-demo {
  padding:8px;
}
.landing-v3 .hero-compact-compare.smart-fix-compact-compare {
  width:100%;
  height:100%;
  min-height:0;
  border:1.5px solid rgba(255,255,255,.94);
  border-radius:19px;
  box-shadow:0 13px 28px rgba(42,29,20,.15);
}
.landing-v3 .hero-compact-compare > img {
  object-position:50% 31%;
}
.landing-v3 .hero-compact-compare .compare-handle {
  width:48px;
  height:48px;
}
.landing-v3 .hero-analysis-marker {
  --marker-delay:0s;
  position:absolute;
  z-index:7;
  min-height:25px;
  padding:0 8px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  display:flex;
  align-items:center;
  gap:5px;
  color:#fff;
  background:rgba(38,31,27,.7);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  box-shadow:0 5px 14px rgba(20,14,10,.12);
  font-size:8px;
  font-weight:720;
  opacity:0;
  transform:translateY(6px) scale(.94);
  transform-origin:center;
  pointer-events:none;
  animation:smart-fix-marker-cycle 7.2s cubic-bezier(.2,.8,.2,1) var(--marker-delay) infinite both;
}
.landing-v3 .hero-analysis-marker i {
  width:6px;
  height:6px;
  border-radius:50%;
  background:#5fdb9c;
  box-shadow:0 0 0 4px rgba(95,219,156,.13);
  animation:smart-fix-marker-dot 1.8s ease-in-out calc(var(--marker-delay) + .35s) infinite;
}
.landing-v3 .hero-analysis-marker.is-face { --marker-delay:0s; top:24%; left:18px; }
.landing-v3 .hero-analysis-marker.is-light { --marker-delay:.48s; top:49%; left:18px; }
.landing-v3 .hero-analysis-marker.is-detail { --marker-delay:.96s; right:18px; bottom:25%; }
.landing-v3 .hero-compact-smart-demo .hero-result-bar {
  right:18px;
  bottom:18px;
  left:18px;
  min-height:45px;
  border-radius:14px;
}
.landing-v3 .hero-compact-smart-demo .hero-result-bar b { font-size:10px; }
.landing-v3 .hero-compact-smart-demo .hero-result-bar small { font-size:8px; }
.landing-v3 .hero-compact-state > .hero-photoshoot-demo {
  padding:8px 8px 5px;
  grid-template-rows:minmax(0,1fr) 36px;
  gap:2px;
}
.landing-v3 .hero-compact-state .hero-photoshoot-story {
  padding:0 6px;
}
.landing-v3 .hero-compact-state .hero-photoshoot-stack {
  max-width:300px;
}
.landing-v3 .hero-compact-state .hero-photoshoot-controls {
  grid-template-columns:38px minmax(0,1fr) 38px;
  padding:0 6px;
}
.landing-v3 .hero-compact-state .hero-deck-control {
  width:34px;
  height:34px;
}
.landing-v3 .hero-compact-state .hero-mode-note {
  min-height:34px;
  margin:7px 3px 6px;
}
.landing-v3 .hero-compact-state .hero-mode-note > span {
  width:30px;
  height:30px;
  border-radius:10px;
}
.landing-v3 .hero-compact-state .hero-mode-note.is-smart-fix > div {
  display:flex;
  flex-direction:column;
  gap:2px;
}
.landing-v3 .hero-compact-state .hero-mode-note.is-smart-fix small {
  color:#d84910;
  font-size:7.5px;
  font-weight:800;
  line-height:1.1;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.landing-v3 .hero-compact-state .hero-mode-note.is-smart-fix b {
  font-size:11px;
  line-height:1.2;
}
.landing-v3 .hero-compact-state .hero-mode-note b {
  font-size:10.5px;
}
.landing-v3 .hero-compact-state .signature-cta {
  min-height:58px;
}
.landing-v3 .hero-compact-state .hero-product-trust {
  grid-area:auto;
  min-height:18px;
  margin-top:7px;
}
@keyframes hero-expanded-pane-in {
  from { opacity:0; transform:translate3d(0,7px,0) scale(.994); }
  to { opacity:1; transform:translate3d(0,0,0) scale(1); }
}

@media (max-width:370px) {
  .landing-v3 .landing-hero-v3.hero-expanded-layout { padding-inline:16px; }
  .landing-v3 .hero-dynamic-copy strong { font-size:18px; }
  .landing-v3 .hero-compact-demo { height:242px !important; }
  .landing-v3 .hero-analysis-marker.is-detail { right:15px; }
  .landing-v3 .hero-compact-state .hero-mode-note b { font-size:9.8px; }
  .landing-v3 .hero-compact-state .hero-trust-note b { font-size:9.8px; }
  .landing-v3 .hero-compact-state .hero-trust-note small { font-size:8.4px; }
}

@media (min-width:900px) {
  .landing-v3 .landing-hero-v3.hero-expanded-layout {
    min-height:690px;
    padding-top:64px;
    padding-bottom:58px;
    display:grid;
    grid-template-columns:minmax(0,.78fr) minmax(480px,1.22fr);
    grid-template-areas:"eyebrow panel" "title panel" "copy panel" "switch panel";
    column-gap:70px;
    align-content:center;
  }
  .landing-v3 .hero-expanded-layout .hero-category { grid-area:eyebrow; align-self:end; }
  .landing-v3 .hero-expanded-layout h1 { grid-area:title; align-self:center; }
  .landing-v3 .hero-dynamic-copy { grid-area:copy; align-self:start; }
  .landing-v3 .hero-expanded-layout .hero-product-switch { grid-area:switch; align-self:start; max-width:520px; }
  .landing-v3 .hero-expanded-products { grid-area:panel; align-self:center; margin-top:0; }
  .landing-v3 .hero-compact-state { grid-template-columns:minmax(0,1fr); grid-template-areas:none; }
  .landing-v3 .hero-dynamic-copy strong { font-size:20px; }
  .landing-v3 .hero-dynamic-copy p { font-size:14px; }
  .landing-v3 .hero-compact-demo { height:300px !important; }
}

@media (prefers-reduced-motion:reduce) {
  .landing-v3 .hero-expanded-pane.is-active,
  .landing-v3 .hero-dynamic-copy > div:not([hidden]) { animation:none; }
  .landing-v3 .hero-compact-smart-demo .hero-analysis-marker,
  .landing-v3 .hero-compact-smart-demo .hero-analysis-marker i { animation:none !important; }
  .landing-v3 .hero-compact-smart-demo .hero-analysis-marker { opacity:1; transform:none; }
}

/* Main landing rhythm: quiet separators and consistent mobile section spacing. */
.landing-v3 :is(.landing-pricing-v4,.compact-how-v2,.identity-trust,.landing-faq-compact,.landing-final-v3) {
  position:relative;
}
.landing-v3 :is(.landing-pricing-v4,.compact-how-v2,.identity-trust,.landing-faq-compact,.landing-final-v3)::after {
  content:"";
  position:absolute;
  z-index:2;
  top:0;
  right:20px;
  left:20px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(218,67,15,.18) 18%,rgba(218,67,15,.38) 50%,rgba(218,67,15,.18) 82%,transparent);
  pointer-events:none;
}

@media (max-width:899px) {
  .landing-v3 .landing-pricing-compact.landing-pricing-v4,
  .landing-v3 .compact-how-v2,
  .landing-v3 .identity-trust,
  .landing-v3 .landing-faq-compact,
  .landing-v3 .landing-final-v3 {
    padding-top:56px;
    padding-bottom:56px;
  }
  .landing-v3 .landing-final-v3 {
    padding-bottom:max(72px,calc(56px + var(--safe-bottom)));
  }
}

/* Final pricing selection sizing override. */
.landing-v3 .pricing-package-check {
  width:32px;
  height:32px;
  opacity:0;
  visibility:hidden;
  transform:scale(.84);
  box-shadow:none;
  transition:opacity .24s ease,transform .34s cubic-bezier(.22,1,.36,1),visibility 0s linear .24s;
}
.landing-v3 .pricing-package-card.is-selected .pricing-package-check {
  opacity:1;
  visibility:visible;
  transform:scale(1);
  box-shadow:0 5px 12px rgba(229,67,15,.14),inset 0 1px rgba(255,255,255,.18);
  transition-delay:0s;
}
@media (max-width:899px) {
  .landing-v3 .pricing-package-check {
    width:34px;
    height:34px;
    top:20px;
    right:20px;
  }
}
