/* NOWFit App Store Screenshots — Shared Styles */
/* Frame size: 1290 × 2796 (iPhone 6.7" Pro Max App Store spec) */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root {
  --bg-darkest: #07060B;
  --bg-deep: #0F0D17;
  --orange: #EA8D5C;
  --orange-dark: #D25818;
  --orange-light: #F2A97E;
  --orange-glow: rgba(234, 141, 92, 0.4);
  --text-primary: #FFFFFF;
  --text-secondary: #B5B0A8;
  --text-dim: #6B6762;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html, body {
  width: 1290px;
  height: 2796px;
  overflow: hidden;
  background: var(--bg-darkest);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--text-primary);
  -webkit-font-smoothing: antialiased;
}

/* Frame container */
.frame {
  position: relative;
  width: 1290px;
  height: 2796px;
  overflow: hidden;
  background:
    radial-gradient(ellipse 80% 60% at 50% 30%, rgba(234, 141, 92, 0.10) 0%, transparent 60%),
    radial-gradient(ellipse 70% 50% at 50% 100%, rgba(210, 88, 24, 0.08) 0%, transparent 50%),
    var(--bg-darkest);
}

/* Subtle grid texture */
.frame-grid {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(234, 141, 92, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(234, 141, 92, 0.03) 1px, transparent 1px);
  background-size: 96px 96px;
  mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, black 0%, transparent 80%);
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 50%, black 0%, transparent 80%);
  pointer-events: none;
}

/* Ambient blob behind content */
.frame-blob {
  position: absolute;
  width: 1400px; height: 1400px;
  top: -200px; left: 50%;
  transform: translateX(-50%);
  opacity: 0.15;
  -webkit-mask-image: radial-gradient(circle at 50% 50%, black 30%, transparent 70%);
  mask-image: radial-gradient(circle at 50% 50%, black 30%, transparent 70%);
  filter: saturate(1.3) brightness(1.1);
  pointer-events: none;
}

/* Headline area at top */
.headline-block {
  position: absolute;
  top: 200px;
  left: 0; right: 0;
  text-align: center;
  padding: 0 80px;
  z-index: 10;
}

.frame-eyebrow {
  display: inline-block;
  font-size: 28px;
  font-weight: 600;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: var(--orange);
  margin-bottom: 36px;
  padding: 12px 28px;
  border: 1.5px solid rgba(234, 141, 92, 0.4);
  border-radius: 999px;
  background: rgba(234, 141, 92, 0.08);
}

.frame-headline {
  font-size: 110px;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.02;
  margin-bottom: 32px;
  color: var(--text-primary);
}

.frame-headline .accent {
  background: linear-gradient(135deg, #EA8D5C 0%, #F2A97E 50%, #D25818 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: block;
}

.frame-subline {
  font-size: 40px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--text-secondary);
  max-width: 1000px;
  margin: 0 auto;
  letter-spacing: -0.01em;
}

/* Phone container in middle — phone bezel is in the source image */
.phone-stage {
  position: absolute;
  bottom: 180px;
  left: 50%;
  transform: translateX(-50%);
  width: 760px;
  z-index: 5;
  filter: drop-shadow(0 60px 80px rgba(0,0,0,0.6)) drop-shadow(0 30px 60px rgba(234, 141, 92, 0.18));
}

.phone-stage img {
  width: 100%;
  height: auto;
  display: block;
}

/* Highlight overlay (for cropping into specific app sections) */
.highlight-mask {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: linear-gradient(180deg,
    rgba(7, 6, 11, 0) 0%,
    rgba(7, 6, 11, 0) 50%,
    rgba(7, 6, 11, 0.6) 100%);
  pointer-events: none;
}

/* Brand mark at bottom */
.frame-brand {
  position: absolute;
  bottom: 80px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
}

.frame-brand svg {
  width: 240px; height: auto;
  opacity: 0.85;
}

/* Frame 1 (HERO) — large logo treatment */
.hero-frame .headline-block { top: 240px; }
.hero-frame .frame-headline { font-size: 130px; }
.hero-frame .phone-stage {
  bottom: 80px;
  width: 720px;
}

/* Frame 6 (CTA) — no phone, big logo treatment */
.cta-frame {
  display: flex;
  align-items: center;
  justify-content: center;
}
.cta-frame .cta-content {
  text-align: center;
  z-index: 10;
  padding: 0 80px;
}
.cta-frame .cta-logo {
  width: 600px;
  filter: drop-shadow(0 12px 60px rgba(234, 141, 92, 0.4));
  margin-bottom: 80px;
}
.cta-frame .cta-tagline {
  font-size: 110px;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.05;
  margin-bottom: 44px;
}
.cta-frame .cta-tagline .accent {
  background: linear-gradient(135deg, #EA8D5C 0%, #F2A97E 50%, #D25818 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.cta-frame .cta-sub {
  font-size: 38px;
  font-weight: 500;
  color: var(--text-secondary);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.cta-frame .cta-blob {
  position: absolute;
  width: 1800px; height: 1800px;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0.25;
  -webkit-mask-image: radial-gradient(circle at 50% 50%, black 30%, transparent 65%);
  mask-image: radial-gradient(circle at 50% 50%, black 30%, transparent 65%);
}
