/* ============================================================
   You&I: Ampersand page
   Loads after youi-site.css and only adds what that file lacks.
   Every class here is prefixed amp- so nothing leaks elsewhere.
   ============================================================ */

/* ---------- Shared bits ---------------------------------------------- */

.amp-steps, .amp-rules__list, .amp-chips { list-style: none; margin: 0; padding: 0; }
.amp-hero p, .amp-call p, .amp-done p, .amp-faq__item p { margin: 0; }
.amp-hero__title { margin: 0; }

.amp-kicker { display: inline-flex; align-items: center; gap: 10px; font-size: 14px; font-weight: 500; color: var(--youi-mute-dark); }
.amp-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--youi-blue); box-shadow: 0 0 0 4px rgba(4, 187, 255, .2); }
.amp-pill { font-size: 13px; font-weight: 600; background: #fff; color: var(--youi-ink); padding: 6px 12px; border-radius: 999px; }
.amp-small-print { color: #8E8E93; max-width: 760px; }
.amp-head-side { flex: 1 1 360px; max-width: 460px; }

.youi .amp-btn-ghost { background: rgba(255, 255, 255, .1); color: #fff; }
.youi .amp-btn-ghost:hover { background: rgba(255, 255, 255, .18); color: #fff; }

/* Phone frame around a real screenshot */
.amp-phone { background: var(--youi-ink); padding: 8px; border-radius: 40px; box-shadow: 0 30px 60px -30px rgba(10, 10, 11, .45); width: 100%; }
.amp-phone img { display: block; width: 100%; height: auto; aspect-ratio: 780 / 1688; border-radius: 33px; }

/* Browser frame around a desktop screenshot */
.amp-browser { margin: 0; background: #fff; border-radius: var(--youi-radius-md); overflow: hidden; box-shadow: 0 40px 80px -40px rgba(10, 10, 11, .35); }
.amp-browser--line { border: 1px solid var(--youi-grey-2); box-shadow: 0 40px 80px -40px rgba(10, 10, 11, .3); }
.amp-browser__bar { display: flex; align-items: center; gap: 8px; padding: 14px 18px; border-bottom: 1px solid var(--youi-grey-2); }
.amp-browser__bar i { width: 11px; height: 11px; border-radius: 50%; background: var(--youi-line); }
.amp-browser__bar span { margin-left: 12px; font-size: 12px; color: var(--youi-mute); background: var(--youi-grey); padding: 5px 14px; border-radius: 999px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.amp-browser img { display: block; width: 100%; height: auto; aspect-ratio: 1600 / 1000; }

/* ---------- Hero ------------------------------------------------------ */

.amp-hero { position: relative; overflow: hidden; background: var(--youi-ink); color: #fff; }
.amp-hero__glyph { position: absolute; right: -4%; top: -14%; font-size: clamp(420px, 62vw, 980px); line-height: 1; font-weight: 700; color: #fff; opacity: .06; pointer-events: none; user-select: none; }
.amp-hero__inner { position: relative; display: flex; flex-wrap: wrap; gap: 56px; align-items: flex-end; padding-top: clamp(72px, 10vw, 112px); }
.amp-hero__text { flex: 1 1 460px; min-width: 0; display: flex; flex-direction: column; gap: 28px; padding-bottom: clamp(64px, 9vw, 112px); }
.amp-hero__title { font-size: clamp(44px, 6.6vw, 92px); line-height: 1.02; letter-spacing: -0.045em; font-weight: 600; color: #fff; }
.amp-hero__lead { font-size: clamp(18px, 1.7vw, 21px); line-height: 1.55; color: var(--youi-mute-dark); max-width: 540px; }
.amp-hero__proof { display: flex; align-items: center; gap: 16px; margin-top: 12px; padding-top: 24px; border-top: 1px solid rgba(255, 255, 255, .14); max-width: 520px; font-size: 15px; line-height: 1.5; color: var(--youi-mute-dark); }
.amp-hero__proofnum { font-size: 44px; line-height: 1; letter-spacing: -0.04em; font-weight: 600; color: var(--youi-blue); flex-shrink: 0; }

.amp-hero__phones { flex: 1 1 440px; min-width: 0; display: flex; justify-content: center; align-items: flex-end; }
.amp-hero__phones .amp-phone { padding: 9px 9px 0; border-radius: 44px 44px 0 0; background: #2C2C2E; box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .6); }
.amp-hero__phones .amp-phone img { border-radius: 36px 36px 0 0; object-fit: cover; object-position: top; }
.amp-phone--back { width: min(46%, 270px); transform: translateX(14px); }
.amp-phone--back img { aspect-ratio: 780 / 1500; }
.amp-phone--front { width: min(50%, 300px); position: relative; z-index: 1; transform: translateX(-14px); }
.amp-phone--front img { aspect-ratio: 780 / 1560; }

/* ---------- A · M · P band -------------------------------------------- */

.amp-amp { display: flex; flex-direction: column; gap: 56px; }
.amp-amp .youi-statement { max-width: 900px; }
.amp-amp__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); gap: 40px 32px; }
.amp-amp__col { display: flex; flex-direction: column; gap: 14px; border-top: 2px solid rgba(255, 255, 255, .3); padding-top: 24px; }
.amp-amp__col.is-accent { border-top-color: var(--youi-blue); }
.amp-amp__letter { font-size: clamp(64px, 7vw, 96px); line-height: .9; letter-spacing: -0.05em; font-weight: 700; color: #fff; }
.amp-amp__col.is-accent .amp-amp__letter { color: var(--youi-blue); }

/* ---------- Journey stages -------------------------------------------- */

.amp-stage { align-items: center; }
.amp-stage__text { flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.amp-steps { display: flex; flex-direction: column; gap: 20px; }
.amp-steps li { display: flex; gap: 16px; align-items: flex-start; }
.amp-steps__n { flex-shrink: 0; width: 36px; height: 36px; border-radius: 50%; background: var(--youi-ink); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 15px; }
.amp-steps__n.is-blue { background: var(--youi-blue); color: var(--youi-ink); }
.amp-steps__t { display: flex; flex-direction: column; gap: 4px; }
.amp-steps__t b { font-size: 18px; font-weight: 600; letter-spacing: -0.01em; }
.amp-steps__t span { font-size: 15px; line-height: 1.6; color: var(--youi-mute); }
.amp-stage__fig { flex: 1 1 300px; min-width: 0; margin: 0; display: flex; flex-direction: column; align-items: center; gap: 16px; }
.amp-stage__fig .amp-phone { max-width: 300px; padding: 9px; border-radius: 46px; }
.amp-stage__fig .amp-phone img { border-radius: 38px; }
.amp-stage__fig figcaption { font-size: 13px; color: var(--youi-mute); text-align: center; max-width: 300px; }

/* ---------- Jordan ---------------------------------------------------- */

.amp-jordan { gap: 64px; }
.amp-call { background: var(--youi-grey); border-radius: 28px; padding: 28px; display: flex; flex-direction: column; gap: 16px; }
.amp-call__top { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.amp-call__who { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; }
.amp-call__avatar { width: 32px; height: 32px; border-radius: 50%; background: var(--youi-ink); color: var(--youi-blue); display: flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 700; }
.amp-call__script { background: #fff; border-radius: 18px; padding: 18px 20px; display: flex; flex-direction: column; gap: 10px; font-size: 14px; line-height: 1.55; color: var(--youi-ink-3); }
.amp-call__script b { font-weight: 600; color: var(--youi-ink); }

/* ---------- Sales team ------------------------------------------------ */

.amp-feature { gap: 10px; }
.amp-feature__t { font-size: 18px; font-weight: 600; letter-spacing: -0.01em; }
.amp-phones { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)); gap: 24px; align-items: start; }
.amp-phones__item { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 14px; }
.amp-phones__item .amp-phone { max-width: 260px; }
.amp-phones__item figcaption { font-size: 14px; line-height: 1.5; color: var(--youi-mute); text-align: center; max-width: 260px; }
.amp-phones__item figcaption b { color: var(--youi-ink); font-weight: 600; }

/* ---------- Owners ---------------------------------------------------- */

.amp-insights { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 48px; }
.amp-insights__text { flex: 1 1 340px; min-width: 0; }
.amp-insights__fig { flex: 1 1 420px; min-width: 0; margin: 0; }
.amp-insights__fig img { display: block; width: 100%; height: auto; aspect-ratio: 1600 / 1745; border-radius: 20px; box-shadow: 0 30px 60px -30px rgba(10, 10, 11, .3); }

/* ---------- Rules ----------------------------------------------------- */

.amp-rules { display: flex; flex-wrap: wrap; gap: 48px 64px; }
.amp-rules__intro { flex: 1 1 380px; min-width: 0; }
.amp-rules__list { flex: 1.4 1 480px; min-width: 0; display: flex; flex-direction: column; }
.amp-rules__list li { display: flex; gap: 20px; padding: 22px 0; border-top: 1px solid var(--youi-grey-2); }
.amp-rules__list li:last-child { border-bottom: 1px solid var(--youi-grey-2); }
.amp-rules__n { flex-shrink: 0; width: 28px; font-size: 15px; font-weight: 600; color: var(--youi-mute); }
.amp-rules__t { display: flex; flex-direction: column; gap: 6px; }
.amp-rules__t b { font-size: 18px; font-weight: 600; letter-spacing: -0.01em; }
.amp-rules__t span { font-size: 15px; line-height: 1.6; color: var(--youi-mute); }

/* ---------- Who it's for + go live ------------------------------------ */

.amp-who { display: flex; flex-wrap: wrap; gap: 40px 64px; align-items: flex-start; }
.amp-who__intro { flex: 1 1 380px; min-width: 0; }
.amp-chips { flex: 1 1 420px; min-width: 0; display: flex; flex-wrap: wrap; gap: 10px; align-content: flex-start; }
.amp-chips li { background: #fff; border-radius: 999px; padding: 12px 20px; font-size: 15px; font-weight: 500; }
.youi-step.amp-step--white { background: #fff; }

/* ---------- Walkthrough CTA ------------------------------------------- */

.amp-cta { display: flex; flex-wrap: wrap; gap: 64px; align-items: flex-start; }
.amp-cta__text { flex: 1 1 400px; min-width: 0; }
.amp-cta__text .youi-h2 { color: #fff; }
.amp-ticks-dark li { color: #fff; }
.amp-cta__card { flex: 1 1 460px; min-width: 0; background: #fff; color: var(--youi-ink); border-radius: var(--youi-radius); padding: clamp(28px, 4vw, 44px); }

.amp-consent { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; line-height: 1.5; color: var(--youi-mute); cursor: pointer; }
.amp-consent input { width: 20px; height: 20px; margin: 2px 0 0; flex-shrink: 0; accent-color: var(--youi-ink); cursor: pointer; }
.amp-consent a { color: var(--youi-ink); text-decoration: underline; text-underline-offset: 2px; }
.amp-consent.is-invalid span { color: #8A1F11; }
.amp-cta__card .youi-btn--blue .youi-spin { border-color: rgba(10, 10, 11, .25); border-top-color: var(--youi-ink); }

.amp-done { display: flex; flex-direction: column; gap: 16px; padding: 12px 0; }
.amp-done[hidden] { display: none; }
.amp-done__icon { width: 56px; height: 56px; border-radius: 50%; background: var(--youi-blue); color: var(--youi-ink); display: flex; align-items: center; justify-content: center; }
.amp-done__title { font-size: 30px; line-height: 1.15; letter-spacing: -0.03em; font-weight: 600; }
.amp-done .youi-btn { align-self: flex-start; }
.amp-done .youi-btn[hidden] { display: none; }

/* ---------- FAQ ------------------------------------------------------- */

.amp-faq { max-width: 880px; display: flex; flex-direction: column; gap: 40px; }
.amp-faq__list { display: flex; flex-direction: column; }
.amp-faq__item { border-top: 1px solid var(--youi-grey-2); }
.amp-faq__item:last-child { border-bottom: 1px solid var(--youi-grey-2); }
.amp-faq__item summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 24px 0; min-height: 44px; font-size: 19px; font-weight: 600; letter-spacing: -0.01em; }
.amp-faq__item summary::-webkit-details-marker { display: none; }
.amp-faq__chev { flex-shrink: 0; transition: transform 240ms var(--youi-ease); }
.amp-faq__item[open] .amp-faq__chev { transform: rotate(45deg); }
.amp-faq__item p { padding: 0 48px 26px 0; font-size: 16px; line-height: 1.65; color: var(--youi-mute); }

/* ---------- Small screens --------------------------------------------- */

@media (max-width: 640px) {
	.amp-hero__glyph { right: -30%; top: -6%; }
	.amp-hero__proof { flex-direction: column; align-items: flex-start; gap: 8px; }
	.amp-hero__phones { margin: 0 -8px; }
	.amp-faq__item p { padding-right: 0; }
	.amp-browser__bar span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.amp-faq__chev { transition: none; }
}
