/**
 * Shopini SaaS 2.0 — homepage moderne et épurée.
 * Chargée uniquement sur la page d'accueil.
 */

.shopini-home-v20 {
	overflow: clip;
	background: #fff;
}

.shopini-home-v20 .shopini-v20-shell {
	width: min(calc(100% - 2rem), 76rem);
	margin-inline: auto;
}

.shopini-home-v20 .shopini-v20-eyebrow {
	margin: 0 0 .75rem;
	color: var(--shopini-primary-dark);
	font-size: .76rem;
	font-weight: 850;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.shopini-home-v20 .shopini-v20-section-heading {
	max-width: 47rem;
	margin: 0 auto clamp(2rem, 4vw, 3rem);
	text-align: center;
}

.shopini-home-v20 .shopini-v20-section-heading--compact {
	max-width: 43rem;
}

.shopini-home-v20 .shopini-v20-section-heading h2 {
	margin: 0;
	font-size: var(--shopini-title-sm);
	line-height: 1.04;
	letter-spacing: -.045em;
}

.shopini-home-v20 .shopini-v20-section-heading > p:last-child {
	max-width: 42rem;
	margin: 1rem auto 0;
	color: var(--shopini-muted);
	font-size: 1.04rem;
	line-height: 1.75;
}

.shopini-home-v20 .shopini-v20-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .8rem;
}

.shopini-home-v20 .shopini-v20-link {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	margin-top: auto;
	color: var(--shopini-ink);
	font-size: .9rem;
	font-weight: 800;
}

.shopini-home-v20 .shopini-v20-link span {
	color: var(--shopini-primary-dark);
	transition: transform 180ms ease;
}

.shopini-home-v20 .shopini-v20-link:hover span {
	transform: translateX(.2rem);
}

/* Hero */
.shopini-v20-hero {
	position: relative;
	padding: clamp(4.25rem, 8vw, 7.5rem) 0 clamp(3rem, 6vw, 5.25rem);
	background:
		radial-gradient(circle at 74% 26%, color-mix(in srgb, var(--shopini-primary) 11%, transparent), transparent 24rem),
		linear-gradient(180deg, #fff 0%, #fffdfb 66%, #fff 100%);
}

.shopini-v20-hero::before,
.shopini-v20-hero::after {
	position: absolute;
	width: 18rem;
	height: 18rem;
	content: "";
	pointer-events: none;
	border-radius: 50%;
	filter: blur(60px);
	opacity: .4;
}

.shopini-v20-hero::before {
	inset: -7rem auto auto -8rem;
	background: color-mix(in srgb, var(--shopini-secondary) 10%, transparent);
}

.shopini-v20-hero::after {
	inset: auto -8rem -7rem auto;
	background: color-mix(in srgb, var(--shopini-primary) 11%, transparent);
}

.shopini-v20-hero__grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(30rem, 1.08fr);
	align-items: center;
	gap: clamp(2.5rem, 6vw, 6rem);
}

.shopini-v20-hero__copy h1 {
	max-width: 12.5ch;
	margin: 0;
	font-size: var(--shopini-title-lg);
	line-height: .97;
	letter-spacing: -.065em;
}

.shopini-v20-hero__copy h1 span,
.shopini-v20-hero__copy h1 strong {
	display: block;
}

.shopini-v20-hero__copy h1 strong {
	margin-top: .12em;
	color: var(--shopini-primary-dark);
	font-weight: 800;
}

.shopini-v20-hero__lead {
	max-width: 40rem;
	margin: 1.6rem 0 1.8rem;
	color: var(--shopini-muted);
	font-size: var(--shopini-hero-lead-size);
	line-height: 1.75;
}

.shopini-v20-hero__chips {
	display: flex;
	flex-wrap: wrap;
	gap: .65rem;
	margin-top: 1.55rem;
}

.shopini-v20-hero__chips span {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	padding: .58rem .8rem;
	color: #4d5462;
	background: rgba(255,255,255,.82);
	border: 1px solid var(--shopini-border);
	border-radius: 999px;
	box-shadow: 0 .4rem 1.2rem rgba(23,32,51,.045);
	font-size: .78rem;
	font-weight: 700;
}

.shopini-v20-hero__chips svg {
	width: 1rem;
	height: 1rem;
	color: var(--shopini-primary-dark);
}

.shopini-v20-hero__visual {
	position: relative;
	min-height: 28rem;
	display: grid;
	place-items: center;
}

.shopini-v20-hero__halo {
	position: absolute;
	inset: 6% 4% 4% 5%;
	background:
		radial-gradient(circle at 50% 40%, rgba(255,255,255,.96), rgba(255,247,241,.9) 52%, rgba(245,126,40,.08) 100%);
	border-radius: 43% 57% 45% 55% / 48% 40% 60% 52%;
	transform: rotate(-4deg);
}

.shopini-v20-hero__screen {
	position: relative;
	z-index: 2;
	width: min(100%, 40rem);
	padding: 1.15rem;
	background: rgba(255,255,255,.78);
	border: 1px solid rgba(232,233,237,.92);
	border-radius: 1.65rem;
	box-shadow: 0 2.2rem 5.5rem rgba(23,32,51,.13);
	backdrop-filter: blur(1rem);
}

.shopini-v20-hero__screen picture,
.shopini-v20-hero__screen img {
	width: 100%;
}

.shopini-v20-hero__image {
	border-radius: 1rem;
}

.shopini-v20-float {
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	min-width: 10.5rem;
	padding: .8rem .9rem;
	gap: .65rem;
	background: rgba(255,255,255,.94);
	border: 1px solid rgba(232,233,237,.95);
	border-radius: 1rem;
	box-shadow: 0 1rem 2.8rem rgba(23,32,51,.1);
}

.shopini-v20-float > svg {
	width: 1.55rem;
	height: 1.55rem;
	padding: .25rem;
	color: var(--shopini-primary-dark);
	background: var(--shopini-primary-faint);
	border-radius: .5rem;
}

.shopini-v20-float span {
	display: flex;
	flex-direction: column;
	line-height: 1.15;
}

.shopini-v20-float strong {
	font-size: .8rem;
}

.shopini-v20-float small {
	margin-top: .28rem;
	color: var(--shopini-muted);
	font-size: .66rem;
}

.shopini-v20-float--flow {
	inset: 11% auto auto -4%;
}

.shopini-v20-float--ai {
	inset: auto -2% 8% auto;
}

/* Shopy command */
.shopini-v20-command {
	position: relative;
	z-index: 4;
	padding: 0 0 clamp(4.5rem, 8vw, 7.5rem);
}

.shopini-v20-command__panel {
	padding: clamp(1.4rem, 3vw, 2.2rem);
	background: rgba(255,255,255,.96);
	border: 1px solid var(--shopini-border);
	border-radius: 1.75rem;
	box-shadow: 0 1.3rem 4rem rgba(23,32,51,.075);
}

.shopini-v20-command__heading {
	display: flex;
	align-items: center;
	max-width: 55rem;
	margin: 0 auto 1.3rem;
	gap: .85rem;
	text-align: left;
}

.shopini-v20-command__heading .shopini-v20-eyebrow {
	margin-bottom: .2rem;
}

.shopini-v20-command__heading h2 {
	margin: 0;
	font-size: clamp(1.55rem, 3vw, 2.3rem);
	letter-spacing: -.04em;
}

.shopini-v20-command__bot {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 3.1rem;
	height: 3.1rem;
	color: var(--shopini-primary-dark);
	background: var(--shopini-primary-faint);
	border-radius: 1rem;
}

.shopini-v20-command__form {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	max-width: 55rem;
	margin: 0 auto;
	padding: .55rem;
	background: #fff;
	border: 1px solid #e4e6eb;
	border-radius: 1.15rem;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 .55rem 1.8rem rgba(23,32,51,.055);
}

.shopini-v20-command__form:focus-within {
	border-color: color-mix(in srgb, var(--shopini-primary) 45%, #e4e6eb);
	box-shadow: 0 0 0 .22rem color-mix(in srgb, var(--shopini-primary) 9%, transparent), 0 .7rem 2rem rgba(23,32,51,.07);
}

.shopini-v20-command__form input {
	min-width: 0;
	height: 3.7rem;
	padding: 0 .85rem;
	color: var(--shopini-ink);
	background: transparent;
	border: 0;
	outline: 0;
}

.shopini-v20-command__form input::placeholder {
	color: #9399a5;
}

.shopini-v20-command__form button {
	display: grid;
	place-items: center;
	width: 3.2rem;
	height: 3.2rem;
	padding: 0;
	color: #fff;
	background: var(--shopini-primary);
	border: 0;
	border-radius: .85rem;
	box-shadow: 0 .55rem 1.2rem color-mix(in srgb, var(--shopini-primary) 24%, transparent);
	cursor: pointer;
	transition: transform 180ms ease, background 180ms ease;
}

.shopini-v20-command__form button:hover {
	background: var(--shopini-primary-dark);
	transform: translateY(-1px);
}

.shopini-v20-command__shortcuts {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .6rem;
	margin-top: 1rem;
}

.shopini-v20-command__shortcuts a {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	padding: .55rem .8rem;
	color: #4e5563;
	background: #fafafa;
	border: 1px solid var(--shopini-border);
	border-radius: 999px;
	font-size: .74rem;
	font-weight: 700;
	transition: border-color 180ms ease, background 180ms ease, transform 180ms ease;
}

.shopini-v20-command__shortcuts a:hover {
	background: #fff;
	border-color: color-mix(in srgb, var(--shopini-primary) 35%, var(--shopini-border));
	transform: translateY(-1px);
}

.shopini-v20-command__shortcuts svg {
	width: 1rem;
	height: 1rem;
}

/* Main services */
.shopini-v20-services {
	padding: 0 0 clamp(4.75rem, 9vw, 8rem);
}

.shopini-v20-services__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.shopini-v20-service {
	display: flex;
	flex-direction: column;
	min-height: 38rem;
	padding: clamp(1.35rem, 2.2vw, 1.8rem);
	background: #fff;
	border: 1px solid var(--shopini-border);
	border-radius: 1.5rem;
	box-shadow: 0 .9rem 3rem rgba(23,32,51,.055);
}

.shopini-v20-service__icon,
.shopini-v20-ai-card__icon {
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	margin-bottom: 1rem;
	border-radius: .95rem;
}

.shopini-v20-service--store .shopini-v20-service__icon {
	color: var(--shopini-primary-dark);
	background: var(--shopini-primary-faint);
}

.shopini-v20-service--flow .shopini-v20-service__icon {
	color: #16855d;
	background: #effaf5;
}

.shopini-v20-service--agent .shopini-v20-service__icon {
	color: #7555d8;
	background: #f4f1ff;
}

.shopini-v20-service__label {
	margin: 0 0 .45rem;
	color: var(--shopini-muted);
	font-size: .74rem;
	font-weight: 850;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.shopini-v20-service h3 {
	margin: 0;
	font-size: clamp(1.35rem, 2.5vw, 1.8rem);
	letter-spacing: -.035em;
}

.shopini-v20-service > p:not(.shopini-v20-service__label) {
	margin: .8rem 0 1.25rem;
	color: var(--shopini-muted);
	font-size: .93rem;
	line-height: 1.72;
}

.shopini-v20-service__media,
.shopini-v20-agent-demo {
	position: relative;
	display: grid;
	place-items: center;
	min-height: 14.3rem;
	margin: auto 0 1.2rem;
	overflow: hidden;
	background: #f8f9fb;
	border: 1px solid #eceef2;
	border-radius: 1.15rem;
}

.shopini-v20-service--store .shopini-v20-service__media {
	background: linear-gradient(145deg, #fffaf6, #f8f9fb);
}

.shopini-v20-service--flow .shopini-v20-service__media {
	background: linear-gradient(145deg, #f7fbff, #f4fbf8);
}

.shopini-v20-service__image {
	width: 100%;
	max-height: 14rem;
	object-fit: contain;
}

.shopini-v20-agent-demo {
	align-content: start;
	place-items: stretch;
	padding: 1rem;
	background: linear-gradient(145deg, #fbf9ff, #fffaf6);
}

.shopini-v20-agent-demo__top {
	display: flex;
	align-items: center;
	gap: .6rem;
	margin-bottom: .9rem;
}

.shopini-v20-agent-demo__top > div {
	display: flex;
	flex-direction: column;
	line-height: 1.15;
}

.shopini-v20-agent-demo__top strong {
	font-size: .78rem;
}

.shopini-v20-agent-demo__top small {
	margin-top: .2rem;
	color: #16855d;
	font-size: .65rem;
}

.shopini-v20-agent-demo__avatar {
	display: grid;
	place-items: center;
	width: 2.3rem;
	height: 2.3rem;
	color: var(--shopini-primary-dark);
	background: #fff;
	border: 1px solid #eee9e5;
	border-radius: .75rem;
}

.shopini-v20-agent-demo__bubble {
	max-width: 88%;
	margin-bottom: .55rem;
	padding: .72rem .8rem;
	font-size: .69rem;
	line-height: 1.45;
	border-radius: .8rem;
}

.shopini-v20-agent-demo__bubble--customer {
	justify-self: end;
	background: #fff;
	border: 1px solid #e8e8ec;
}

.shopini-v20-agent-demo__bubble--shopy {
	justify-self: start;
	background: #fff4eb;
}

.shopini-v20-agent-demo__channels {
	display: flex;
	gap: .45rem;
	margin-top: auto;
}

.shopini-v20-agent-demo__channels span {
	padding: .34rem .55rem;
	color: #565d68;
	background: rgba(255,255,255,.82);
	border: 1px solid #e9e9ed;
	border-radius: 999px;
	font-size: .62rem;
	font-weight: 800;
}

/* AI tools */
.shopini-v20-ai-tools {
	padding: clamp(4.8rem, 8vw, 7rem) 0;
	background: #fafbfc;
	border-block: 1px solid #f0f1f3;
}

.shopini-v20-ai-tools__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
}

.shopini-v20-ai-card {
	display: flex;
	flex-direction: column;
	min-height: 28.5rem;
	padding: 1.25rem;
	background: #fff;
	border: 1px solid var(--shopini-border);
	border-radius: 1.35rem;
	box-shadow: 0 .7rem 2.2rem rgba(23,32,51,.045);
}

.shopini-v20-ai-card__icon {
	width: 2.8rem;
	height: 2.8rem;
	color: #4d7dcc;
	background: #f0f6ff;
}

.shopini-v20-ai-card--landing .shopini-v20-ai-card__icon {
	color: #cc7b18;
	background: #fff7e8;
}

.shopini-v20-ai-card--marketing .shopini-v20-ai-card__icon {
	color: #d54c7f;
	background: #fff0f5;
}

.shopini-v20-ai-card--marketplace .shopini-v20-ai-card__icon {
	color: #167cc4;
	background: #edf8ff;
}

.shopini-v20-ai-card h3 {
	margin: 0;
	font-size: 1.15rem;
	letter-spacing: -.025em;
}

.shopini-v20-ai-card > p {
	margin: .7rem 0 1rem;
	color: var(--shopini-muted);
	font-size: .83rem;
	line-height: 1.7;
}

.shopini-v20-ai-card__preview {
	display: flex;
	align-items: center;
	min-height: 8.8rem;
	margin: auto 0 1rem;
	padding: .8rem;
	gap: .75rem;
	overflow: hidden;
	background: #fafafa;
	border: 1px solid #eeeeef;
	border-radius: 1rem;
}

.shopini-v20-preview-photo {
	flex: 0 0 4.4rem;
	width: 4.4rem;
	height: 5.3rem;
	background: linear-gradient(145deg, #f2f2f2 20%, #dedede 20% 38%, #c6c6c6 38% 58%, #ececec 58%);
	border-radius: .8rem;
}

.shopini-v20-ai-card__preview > div:not(.shopini-v20-preview-page):not(.shopini-v20-preview-post):not(.shopini-v20-preview-products) {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: .42rem;
}

.shopini-v20-ai-card__preview strong {
	font-size: .72rem;
}

.shopini-v20-ai-card__preview i {
	display: block;
	width: 90%;
	height: .35rem;
	background: #e9eaed;
	border-radius: 999px;
}

.shopini-v20-ai-card__preview i:nth-of-type(2) {
	width: 70%;
}

.shopini-v20-ai-card__preview small {
	width: fit-content;
	padding: .28rem .42rem;
	color: #397abf;
	background: #edf7ff;
	border-radius: 999px;
	font-size: .55rem;
}

.shopini-v20-preview-page {
	display: grid;
	align-content: center;
	width: 100%;
	min-height: 7rem;
	padding: .8rem;
	background: linear-gradient(145deg, #fff, #fff7ed);
	border: 1px solid #efe5db;
	border-radius: .7rem;
}

.shopini-v20-preview-page > span {
	width: 2rem;
	height: .28rem;
	margin-bottom: .7rem;
	background: var(--shopini-primary);
	border-radius: 999px;
}

.shopini-v20-preview-page strong {
	font-size: .78rem;
}

.shopini-v20-preview-page i {
	margin: .55rem 0 .7rem;
}

.shopini-v20-preview-page b {
	width: fit-content;
	padding: .35rem .55rem;
	color: #fff;
	background: #11161c;
	border-radius: .45rem;
	font-size: .52rem;
}

.shopini-v20-preview-post {
	display: flex;
	width: 100%;
	flex-direction: column;
	gap: .5rem;
}

.shopini-v20-preview-post small {
	padding: 0;
	color: #a45f77;
	background: transparent;
}

.shopini-v20-preview-products {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	width: 100%;
	gap: .45rem;
}

.shopini-v20-preview-products span {
	height: 5rem;
	background: linear-gradient(145deg, #f2ece5, #d8c2ac);
	border-radius: .7rem;
}

.shopini-v20-preview-products span:nth-child(2) {
	background: linear-gradient(145deg, #efefef, #c7d0d8);
}

.shopini-v20-preview-products span:nth-child(3) {
	background: linear-gradient(145deg, #f2edea, #d7b795);
}

/* Ecosystem */
.shopini-v20-ecosystem {
	padding: clamp(5rem, 9vw, 8rem) 0;
}

.shopini-v20-ecosystem__panel {
	display: grid;
	grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
	align-items: center;
	padding: clamp(2rem, 4vw, 3rem);
	gap: clamp(2rem, 5vw, 4.2rem);
	background: linear-gradient(135deg, #0e1624, #101c31 58%, #182848);
	border-radius: 1.8rem;
	box-shadow: 0 2rem 4rem rgba(14,22,36,.15);
}

.shopini-v20-ecosystem__copy .shopini-v20-eyebrow {
	color: #ff9b54;
}

.shopini-v20-ecosystem__copy h2 {
	max-width: 11ch;
	margin: 0;
	color: #fff;
	font-size: clamp(2rem, 4vw, 3.5rem);
	letter-spacing: -.05em;
}

.shopini-v20-ecosystem__copy > p:not(.shopini-v20-eyebrow) {
	max-width: 36rem;
	margin: 1rem 0 1.3rem;
	color: #bcc9da;
	line-height: 1.75;
}

.shopini-v20-channel-pills {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}

.shopini-v20-channel-pills span {
	padding: .46rem .66rem;
	color: #dfe7f2;
	background: rgba(255,255,255,.07);
	border: 1px solid rgba(255,255,255,.1);
	border-radius: 999px;
	font-size: .68rem;
	font-weight: 750;
}

.shopini-v20-ecosystem__flow {
	display: grid;
	grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);
	align-items: center;
	gap: .55rem;
}

.shopini-v20-node {
	display: grid;
	place-items: center;
	min-height: 8.3rem;
	padding: 1rem .65rem;
	text-align: center;
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.1);
	border-radius: 1.1rem;
}

.shopini-v20-node > span {
	display: grid;
	place-items: center;
	width: 2.7rem;
	height: 2.7rem;
	margin-bottom: .65rem;
	color: #ff9b54;
	background: rgba(255,155,84,.1);
	border-radius: .8rem;
}

.shopini-v20-node div {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
}

.shopini-v20-node strong {
	color: #fff;
	font-size: .77rem;
}

.shopini-v20-node small {
	margin-top: .28rem;
	color: #9eacc0;
	font-size: .6rem;
}

.shopini-v20-node-arrow {
	color: #67768b;
	font-style: normal;
	font-size: 1.1rem;
}

/* Honest proof strip */
.shopini-v20-proof {
	padding: 0 0 clamp(4.5rem, 8vw, 7rem);
}

.shopini-v20-proof__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	padding: 1.1rem 0;
	border-block: 1px solid var(--shopini-border);
}

.shopini-v20-proof__item {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 4rem;
	padding: .7rem 1rem;
	gap: .65rem;
}

.shopini-v20-proof__item + .shopini-v20-proof__item {
	border-inline-start: 1px solid var(--shopini-border);
}

.shopini-v20-proof__item > span {
	display: grid;
	place-items: center;
	width: 2.45rem;
	height: 2.45rem;
	color: var(--shopini-primary-dark);
	background: var(--shopini-primary-faint);
	border-radius: .8rem;
}

.shopini-v20-proof__item div {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.shopini-v20-proof__item strong {
	font-size: .78rem;
}

.shopini-v20-proof__item small {
	margin-top: .25rem;
	color: var(--shopini-muted);
	font-size: .63rem;
}

/* Harmonise les sections héritées gardées en v2 */
.shopini-home-v20 .shopini-pricing,
.shopini-home-v20 .shopini-faq {
	padding-block: clamp(4.75rem, 8vw, 7rem);
}

.shopini-home-v20 .shopini-pricing {
	background: #fafbfc;
	border-block: 1px solid #f0f1f3;
}

.shopini-home-v20 .shopini-plan,
.shopini-home-v20 .shopini-faq details {
	box-shadow: none;
}

.shopini-home-v20 .shopini-cta-final {
	width: min(calc(100% - 2rem), 76rem);
	margin-inline: auto;
	border-radius: 1.8rem;
}

@media (max-width: 1120px) {
	.shopini-v20-hero__grid {
		grid-template-columns: 1fr;
	}

	.shopini-v20-hero__copy {
		max-width: 49rem;
		margin-inline: auto;
		text-align: center;
	}

	.shopini-v20-hero__copy h1,
	.shopini-v20-hero__lead {
		margin-inline: auto;
	}

	.shopini-v20-actions,
	.shopini-v20-hero__chips {
		justify-content: center;
	}

	.shopini-v20-hero__visual {
		width: min(100%, 48rem);
		margin-inline: auto;
	}

	.shopini-v20-services__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.shopini-v20-service--agent {
		grid-column: 1 / -1;
		min-height: 29rem;
	}

	.shopini-v20-ai-tools__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.shopini-v20-ai-card {
		min-height: 25rem;
	}

	.shopini-v20-ecosystem__panel {
		grid-template-columns: 1fr;
	}

	.shopini-v20-ecosystem__copy {
		max-width: 46rem;
	}
}

@media (max-width: 780px) {
	.shopini-v20-hero {
		padding-top: 3.5rem;
	}

	.shopini-v20-hero__copy h1 {
		font-size: var(--shopini-title-lg);
	}

	.shopini-v20-hero__visual {
		min-height: 22rem;
	}

	.shopini-v20-float {
		display: none;
	}

	.shopini-v20-command__shortcuts {
		justify-content: flex-start;
		overflow-x: auto;
		flex-wrap: nowrap;
		padding-bottom: .25rem;
		scrollbar-width: none;
	}

	.shopini-v20-command__shortcuts::-webkit-scrollbar {
		display: none;
	}

	.shopini-v20-command__shortcuts a {
		flex: 0 0 auto;
	}

	.shopini-v20-services__grid,
	.shopini-v20-ai-tools__grid {
		grid-template-columns: 1fr;
	}

	.shopini-v20-service--agent {
		grid-column: auto;
	}

	.shopini-v20-service,
	.shopini-v20-ai-card {
		min-height: 0;
	}

	.shopini-v20-service__media,
	.shopini-v20-agent-demo,
	.shopini-v20-ai-card__preview {
		margin-top: 1rem;
	}

	.shopini-v20-ecosystem__flow {
		grid-template-columns: 1fr;
	}

	.shopini-v20-node {
		grid-template-columns: 2.7rem 1fr;
		place-items: center start;
		min-height: 0;
		padding: .9rem 1rem;
		text-align: left;
	}

	.shopini-v20-node > span {
		margin: 0 .8rem 0 0;
	}

	.shopini-v20-node-arrow {
		justify-self: center;
		transform: rotate(90deg);
	}

	.shopini-v20-proof__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.shopini-v20-proof__item + .shopini-v20-proof__item {
		border-inline-start: 0;
	}

	.shopini-v20-proof__item:nth-child(2n) {
		border-inline-start: 1px solid var(--shopini-border);
	}

	.shopini-v20-proof__item:nth-child(n+3) {
		border-top: 1px solid var(--shopini-border);
	}
}

@media (max-width: 560px) {
	.shopini-home-v20 .shopini-v20-shell {
		width: min(calc(100% - 1.2rem), 76rem);
	}

	.shopini-v20-hero__copy h1 {
		max-width: 10ch;
	}

	.shopini-v20-actions .shopini-btn {
		width: 100%;
	}

	.shopini-v20-hero__screen {
		padding: .65rem;
		border-radius: 1.2rem;
	}

	.shopini-v20-command__panel {
		padding: 1.1rem;
		border-radius: 1.3rem;
	}

	.shopini-v20-command__heading {
		align-items: flex-start;
	}

	.shopini-v20-command__bot {
		width: 2.7rem;
		height: 2.7rem;
	}

	.shopini-v20-command__form {
		padding: .4rem;
	}

	.shopini-v20-command__form input {
		height: 3.2rem;
		font-size: .88rem;
	}

	.shopini-v20-command__form button {
		width: 2.8rem;
		height: 2.8rem;
	}

	.shopini-v20-section-heading h2 {
		font-size: var(--shopini-title-sm);
	}

	.shopini-v20-service,
	.shopini-v20-ai-card {
		border-radius: 1.2rem;
	}

	.shopini-v20-ecosystem__panel {
		padding: 1.5rem;
		border-radius: 1.35rem;
	}

	.shopini-v20-proof__grid {
		grid-template-columns: 1fr;
	}

	.shopini-v20-proof__item,
	.shopini-v20-proof__item:nth-child(2n) {
		justify-content: flex-start;
		border-inline-start: 0;
	}

	.shopini-v20-proof__item:nth-child(n+2) {
		border-top: 1px solid var(--shopini-border);
	}
}

@media (prefers-reduced-motion: reduce) {
	.shopini-home-v20 *,
	.shopini-home-v20 *::before,
	.shopini-home-v20 *::after {
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}
}


/* RTL — arabe (Shopini Languages) */
html[dir="rtl"] .shopini-v20-command__heading,
html[dir="rtl"] .shopini-v20-node {
	text-align: right;
}

html[dir="rtl"] .shopini-v20-command__form input {
	direction: rtl;
	text-align: right;
}

html[dir="rtl"] .shopini-v20-link span {
	transform: scaleX(-1);
}

@media (max-width: 680px) {
	html[dir="rtl"] .shopini-v20-node {
		text-align: right;
	}

	html[dir="rtl"] .shopini-v20-node > span {
		margin: 0 0 0 .8rem;
	}
}

/* Shopy live conversation — UI provided by the theme, intelligence by plugin. */
.shopini-v20-command__chat {
	max-width: 55rem;
	max-height: 30rem;
	overflow-y: auto;
	margin: 0 auto 1rem;
	padding: .5rem .25rem .75rem;
	scrollbar-width: thin;
}

.shopini-v20-command__message {
	display: flex;
	margin: .65rem 0;
}

.shopini-v20-command__message--user {
	justify-content: flex-end;
}

.shopini-v20-command__message--assistant,
.shopini-v20-command__message--error {
	justify-content: flex-start;
}

.shopini-v20-command__bubble {
	max-width: min(82%, 43rem);
	padding: .78rem .95rem;
	font-size: .92rem;
	line-height: 1.55;
	white-space: pre-wrap;
	border-radius: 1rem;
}

.shopini-v20-command__message--user .shopini-v20-command__bubble {
	color: #fff;
	background: var(--shopini-ink);
	border-end-end-radius: .32rem;
}

.shopini-v20-command__message--assistant .shopini-v20-command__bubble {
	color: var(--shopini-ink);
	background: #f5f6f8;
	border: 1px solid #eceef2;
	border-end-start-radius: .32rem;
}

.shopini-v20-command__message--error .shopini-v20-command__bubble {
	color: #8a2d20;
	background: #fff3f0;
	border: 1px solid #ffd8cf;
}

.shopini-v20-command__message.is-typing .shopini-v20-command__bubble {
	color: var(--shopini-muted);
	font-style: italic;
}

.shopini-v20-command__form button:disabled {
	opacity: .48;
	cursor: wait;
	transform: none;
}

.shopini-v20-command__footer {
	max-width: 55rem;
	margin: .85rem auto 0;
	text-align: center;
}

.shopini-v20-command__footer button {
	padding: .25rem .45rem;
	color: var(--shopini-muted);
	background: transparent;
	border: 0;
	font: inherit;
	font-size: .75rem;
	text-decoration: underline;
	cursor: pointer;
}

html[dir="rtl"] .shopini-v20-command__message--user {
	justify-content: flex-start;
}

html[dir="rtl"] .shopini-v20-command__message--assistant,
html[dir="rtl"] .shopini-v20-command__message--error {
	justify-content: flex-end;
}

html[dir="rtl"] .shopini-v20-command__bubble {
	text-align: right;
}

@media (max-width: 680px) {
	.shopini-v20-command__bubble {
		max-width: 92%;
	}
}


/* Shopini 2.1 — sélecteur de besoin */
.shopini-v21-needs {
	padding: clamp(2.5rem, 5vw, 4.5rem) 0;
	background: #fff;
	border-top: 1px solid var(--shopini-border);
}
.shopini-v21-needs__grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1rem; }
.shopini-v21-need {
	display: flex; align-items: flex-start; min-height: 11rem; padding: 1.25rem; gap: .9rem; color: var(--shopini-ink); background: #fff; border: 1px solid var(--shopini-border); border-radius: 1rem; box-shadow: 0 .5rem 1.7rem rgba(23,32,51,.05); transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
.shopini-v21-need:hover { transform: translateY(-3px); box-shadow: 0 .9rem 2.3rem rgba(23,32,51,.08); border-color: color-mix(in srgb, var(--shopini-primary) 35%, var(--shopini-border)); }
.shopini-v21-need__icon { display:grid; place-items:center; flex:0 0 auto; width:2.8rem; height:2.8rem; color:var(--shopini-primary-dark); background:var(--shopini-primary-faint); border-radius:.8rem; }
.shopini-v21-need__icon svg { width:1.35rem; height:1.35rem; }
.shopini-v21-need--flow .shopini-v21-need__icon { color:#2f7d32; background:#eef8ee; }
.shopini-v21-need--ai .shopini-v21-need__icon { color:#7047c7; background:#f4efff; }
.shopini-v21-need__content { display:flex; flex-direction:column; min-width:0; }
.shopini-v21-need__content strong { font-size:.96rem; }
.shopini-v21-need__content em { margin-top:.28rem; color:var(--shopini-primary-dark); font-size:.82rem; font-style:normal; font-weight:800; }
.shopini-v21-need--flow .shopini-v21-need__content em { color:#2f7d32; }
.shopini-v21-need--ai .shopini-v21-need__content em { color:#7047c7; }
.shopini-v21-need__content small { margin-top:.75rem; color:var(--shopini-muted); font-size:.76rem; line-height:1.55; }
.shopini-v21-need__arrow { margin-left:auto; margin-top:auto; font-weight:900; }
@media (max-width: 68rem) { .shopini-v21-needs__grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 38rem) { .shopini-v21-needs__grid { grid-template-columns: 1fr; } .shopini-v21-need { min-height: auto; } }


/* Shopini 2.1 — architecture offres Commerce + produits indépendants */
.shopini-pricing--v21 {
	background: linear-gradient(180deg, #fbfcfe 0%, #fff 100%);
}

.shopini-pricing__group,
.shopini-pricing__modules,
.shopini-pricing__bundle {
	width: min(calc(100% - 2rem), var(--shopini-content));
	margin-inline: auto;
}

.shopini-pricing__group-head {
	margin-bottom: 1.35rem;
}

.shopini-pricing__group-head > span {
	display: inline-block;
	margin-bottom: .45rem;
	color: var(--shopini-primary-dark);
	font-size: .74rem;
	font-weight: 850;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.shopini-pricing__group-head h3 {
	margin: 0;
	font-size: var(--shopini-card-title-size);
}

.shopini-pricing__group-head p {
	max-width: 42rem;
	margin: .65rem 0 0;
	color: var(--shopini-muted);
}

.shopini-pricing__group-head--center { text-align: center; }
.shopini-pricing__group-head--center p { margin-inline: auto; }

.shopini-pricing__grid--commerce {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.shopini-plan__topline {
	display: flex;
	align-items: flex-start;
	gap: .8rem;
	margin-bottom: 1rem;
}

.shopini-plan__icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 2.75rem;
	height: 2.75rem;
	color: var(--shopini-primary-dark);
	background: var(--shopini-primary-faint);
	border-radius: .8rem;
}

.shopini-plan__icon svg { width: 1.35rem; height: 1.35rem; }
.shopini-plan__topline .shopini-plan__name { margin: 0; }
.shopini-plan__tagline { margin: .3rem 0 0; color: var(--shopini-muted); font-size: .78rem; line-height: 1.4; }
.shopini-plan__description { flex: 1 1 auto; }
.shopini-plan__form { margin-top: auto; padding-top: 1rem; }
.shopini-plan--business { background: linear-gradient(180deg, #fff 0%, #fffaf6 100%); }
.shopini-plan--flow .shopini-plan__icon { color: #2f7d32; background: #eef8ee; }
.shopini-plan--shopy .shopini-plan__icon { color: #7047c7; background: #f4efff; }

.shopini-pricing__modules {
	margin-top: clamp(3rem, 6vw, 5rem);
	padding-top: clamp(2.5rem, 5vw, 4rem);
	border-top: 1px solid var(--shopini-border);
}

.shopini-pricing__module-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

.shopini-pricing__module-grid > .shopini-plan { min-height: 100%; }

.shopini-module-card {
	display: flex;
	align-items: flex-start;
	gap: 1.15rem;
	min-height: 15rem;
	padding: 1.7rem;
	background: #fff;
	border: 1px solid var(--shopini-border);
	border-radius: var(--shopini-radius-md);
	box-shadow: var(--shopini-shadow-sm);
}

.shopini-module-card__icon {
	display: grid; place-items: center; flex: 0 0 auto; width: 3.2rem; height: 3.2rem; border-radius: 1rem;
}
.shopini-module-card__icon svg { width: 1.55rem; height: 1.55rem; }
.shopini-module-card--flow .shopini-module-card__icon { color: #2f7d32; background: #eef8ee; }
.shopini-module-card--shopy .shopini-module-card__icon { color: #7047c7; background: #f4efff; }
.shopini-module-card h4 { margin: .1rem 0 .6rem; font-size: 1.35rem; }
.shopini-module-card p { margin: 0 0 1.2rem; color: var(--shopini-muted); line-height: 1.65; }

.shopini-pricing__bundle {
	display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 1.4rem; padding: 1.25rem 1.4rem;
	background: #fff8f2; border: 1px solid color-mix(in srgb, var(--shopini-primary) 35%, var(--shopini-border)); border-radius: var(--shopini-radius-md);
}
.shopini-pricing__bundle > div { display: flex; align-items: center; gap: .9rem; }
.shopini-pricing__bundle > div > span { display: grid; place-items: center; width: 2.7rem; height: 2.7rem; color: var(--shopini-primary-dark); background: #fff; border-radius: .8rem; }
.shopini-pricing__bundle strong { font-size: 1rem; }
.shopini-pricing__bundle p { margin: .2rem 0 0; color: var(--shopini-muted); font-size: .84rem; }

@media (max-width: 72rem) {
	.shopini-pricing__grid--commerce { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 44rem) {
	.shopini-pricing__grid--commerce, .shopini-pricing__module-grid { grid-template-columns: 1fr; }
	.shopini-pricing__bundle { align-items: stretch; flex-direction: column; }
}

/* Nombre de cartes Commerce : conserve une grille équilibrée même pendant la migration des produits. */
.shopini-pricing__grid--commerce.shopini-pricing__grid--count-1 {
	grid-template-columns: minmax(0, 28rem);
	justify-content: center;
}
.shopini-pricing__grid--commerce.shopini-pricing__grid--count-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 56rem;
}
.shopini-pricing__grid--commerce.shopini-pricing__grid--count-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.shopini-pricing__grid--commerce.shopini-pricing__grid--count-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 72rem) {
	.shopini-pricing__grid--commerce.shopini-pricing__grid--count-3,
	.shopini-pricing__grid--commerce.shopini-pricing__grid--count-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 44rem) {
	.shopini-pricing__grid--commerce.shopini-pricing__grid--count-1,
	.shopini-pricing__grid--commerce.shopini-pricing__grid--count-2,
	.shopini-pricing__grid--commerce.shopini-pricing__grid--count-3,
	.shopini-pricing__grid--commerce.shopini-pricing__grid--count-4 {
		grid-template-columns: 1fr;
		max-width: none;
	}
}


/* =========================================================
   Shopini SaaS 2.2 — CRO : Shopy AI immédiatement sous Hero
   ========================================================= */

.shopini-home-v22 .shopini-v20-hero {
	padding-bottom: clamp(2.8rem, 5vw, 4.6rem);
}

.shopini-home-v22 .shopini-v20-hero__copy h1 {
	max-width: 11.5ch;
}

.shopini-home-v22 .shopini-v20-hero__lead {
	max-width: 37rem;
}

.shopini-home-v22 > .shopini-trustbar {
	position: relative;
	z-index: 6;
	width: min(calc(100% - 2rem), 76rem);
	margin: clamp(-1.1rem, -1.5vw, -.55rem) auto 0;
	background: rgba(255,255,255,.96);
	border: 1px solid var(--shopini-border);
	border-radius: 1.1rem;
	box-shadow: 0 .9rem 2.6rem rgba(23,32,51,.06);
}

.shopini-home-v22 > .shopini-trustbar .shopini-trustbar__inner {
	max-width: none;
}

.shopini-home-v22 .shopini-v22-shopy {
	padding: clamp(2rem, 4vw, 3.5rem) 0 clamp(4.5rem, 8vw, 7rem);
	background:
		radial-gradient(circle at 78% 20%, color-mix(in srgb, #7c5cff 8%, transparent), transparent 26rem),
		linear-gradient(180deg, #fff 0%, #fbfbff 100%);
}

.shopini-v22-shopy__panel {
	display: grid;
	grid-template-columns: minmax(0, .82fr) minmax(31rem, 1.18fr);
	align-items: center;
	gap: clamp(2rem, 5vw, 4.8rem);
	padding: clamp(1.5rem, 3.5vw, 3.2rem);
	background: linear-gradient(145deg, #fff 0%, #fff 56%, #fbfaff 100%);
	border: 1px solid var(--shopini-border);
	border-radius: 2rem;
	box-shadow: 0 1.7rem 5.4rem rgba(23,32,51,.08);
}

.shopini-v22-shopy__copy h2 {
	max-width: 10.5ch;
	margin: .45rem 0 1rem;
	font-size: var(--shopini-title-sm);
	line-height: 1.02;
	letter-spacing: -.055em;
}

.shopini-v22-shopy__lead {
	max-width: 36rem;
	margin: 0;
	color: var(--shopini-muted);
	font-size: 1rem;
	line-height: 1.75;
}

.shopini-v22-shopy__benefits {
	display: grid;
	gap: .8rem;
	margin: 1.45rem 0 0;
	padding: 0;
	list-style: none;
}

.shopini-v22-shopy__benefits li {
	display: flex;
	align-items: flex-start;
	gap: .7rem;
	color: #3f4654;
	font-size: .9rem;
	line-height: 1.5;
}

.shopini-v22-shopy__benefits svg {
	flex: 0 0 auto;
	width: 1.05rem;
	height: 1.05rem;
	margin-top: .15rem;
	color: var(--shopini-primary-dark);
}

.shopini-v22-shopy__status {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: .18rem .55rem;
	margin-top: 1.6rem;
	padding: .8rem .95rem;
	background: #fafafa;
	border: 1px solid var(--shopini-border);
	border-radius: .95rem;
}

.shopini-v22-shopy__status-dot {
	grid-row: 1 / span 2;
	width: .62rem;
	height: .62rem;
	background: #29a765;
	border-radius: 50%;
	box-shadow: 0 0 0 .25rem rgba(41,167,101,.1);
}

.shopini-v22-shopy__status strong { font-size: .78rem; }
.shopini-v22-shopy__status small { color: var(--shopini-muted); font-size: .67rem; }

.shopini-v22-chat {
	overflow: hidden;
	background: #fff;
	border: 1px solid #e8e9ee;
	border-radius: 1.55rem;
	box-shadow: 0 1.15rem 3.5rem rgba(23,32,51,.09);
}

.shopini-v22-chat__header {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: .75rem;
	padding: 1rem 1.1rem;
	background: linear-gradient(180deg, #fff, #fcfcfd);
	border-bottom: 1px solid #eff0f3;
}

.shopini-v22-chat__avatar {
	display: grid;
	place-items: center;
	width: 2.65rem;
	height: 2.65rem;
	color: #6e4bea;
	background: #f1edff;
	border-radius: .85rem;
}

.shopini-v22-chat__avatar svg { width: 1.25rem; height: 1.25rem; }
.shopini-v22-chat__header > div { display: grid; }
.shopini-v22-chat__header strong { font-size: .88rem; }
.shopini-v22-chat__header small { margin-top: .08rem; color: var(--shopini-muted); font-size: .68rem; }

.shopini-v22-chat__online {
	position: relative;
	padding: .38rem .58rem .38rem 1.05rem;
	color: #24764c;
	background: #effaf4;
	border-radius: 999px;
	font-size: .64rem;
	font-weight: 800;
}

.shopini-v22-chat__online::before {
	position: absolute;
	top: 50%;
	left: .48rem;
	width: .4rem;
	height: .4rem;
	content: '';
	background: #2aad68;
	border-radius: 50%;
	transform: translateY(-50%);
}

.shopini-v22-chat .shopini-v20-command__chat,
.shopini-v22-chat__preview {
	min-height: 7.1rem;
	max-height: 21rem;
	margin: 0;
	padding: 1rem 1rem .2rem;
	background: #fff;
}

.shopini-v22-chat .shopini-v20-command__message { margin: .35rem 0; }
.shopini-v22-chat .shopini-v20-command__bubble { max-width: 88%; font-size: .84rem; }
.shopini-v22-chat__shortcuts { justify-content: flex-start; margin: .65rem 1rem .85rem; gap: .45rem; }
.shopini-v22-chat__shortcuts a { padding: .48rem .65rem; font-size: .67rem; }
.shopini-v22-chat__form { max-width: none; margin: 0 1rem; }
.shopini-v22-chat__hint { margin: .65rem 1.05rem 1rem; color: #9399a5; font-size: .66rem; line-height: 1.45; }
.shopini-v22-chat .shopini-v20-command__footer { max-width: none; margin: 0 1rem .8rem; text-align: right; }

.shopini-home-v22 .shopini-v21-needs { padding-top: clamp(4.5rem, 8vw, 7rem); }

.shopini-home-v22 .shopini-testimonials {
	width: min(calc(100% - 2rem), 76rem);
	margin: 0 auto;
	padding: clamp(4.5rem, 8vw, 7rem) 0 0;
}

.shopini-home-v22 .shopini-testimonial-card {
	background: #fff;
	border: 1px solid var(--shopini-border);
	box-shadow: 0 .8rem 2.7rem rgba(23,32,51,.05);
}

@media (max-width: 980px) {
	.shopini-v22-shopy__panel { grid-template-columns: 1fr; }
	.shopini-v22-shopy__copy { max-width: 44rem; }
	.shopini-v22-shopy__copy h2 { max-width: 15ch; }
}

@media (max-width: 780px) {
	.shopini-home-v22 > .shopini-trustbar { width: min(calc(100% - 1.2rem), 76rem); margin-top: -.4rem; }
	.shopini-v22-shopy__panel { padding: 1.2rem; border-radius: 1.45rem; }
	.shopini-v22-shopy__copy h2 { font-size: var(--shopini-title-sm); }
	.shopini-v22-chat__shortcuts { overflow-x: auto; flex-wrap: nowrap; padding-bottom: .15rem; scrollbar-width: none; }
	.shopini-v22-chat__shortcuts::-webkit-scrollbar { display: none; }
	.shopini-v22-chat__shortcuts a { flex: 0 0 auto; }
}

@media (max-width: 560px) {
	.shopini-home-v22 > .shopini-trustbar .shopini-trustbar__inner { grid-template-columns: repeat(2, 1fr); }
	.shopini-v22-chat__header { padding: .9rem; }
	.shopini-v22-chat .shopini-v20-command__chat,
	.shopini-v22-chat__preview { padding-inline: .8rem; }
	.shopini-v22-chat__shortcuts,
	.shopini-v22-chat__form { margin-inline: .8rem; }
	.shopini-v22-chat__hint { margin-inline: .85rem; }
}


/* Typography controls 2.2.1 — all homepage commercial card titles. */
.shopini-home-v22 .shopini-plan__name,
.shopini-home-v22 .shopini-module-card h4,
.shopini-home-v22 .shopini-v21-need__content strong {
	font-size: var(--shopini-card-title-size);
}
