/* ============================================================
   LimoRide Client Reviews — theme-matched styles
   Default look: white section, ink-navy headings (Playfair-style
   serif), light grey cards, red accent (LimoRide arrows).
   Har cheez Elementor Style tab se override ho sakti hai.
   ============================================================ */

.lrw{
	--lrw-ink:#0A0A1F;
	--lrw-muted:#6b6f7b;
	--lrw-card:#F5F5F7;
	--lrw-line:#e6e6ea;
	--lrw-accent:#E04D2F;
	color:var(--lrw-ink);
	padding:20px 0;
}

/* ---------- Header ---------- */
.lrw-header{margin-bottom:8px;}
.lrw-eyebrow{
	display:inline-block;
	font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;
	color:var(--lrw-accent);
	margin-bottom:16px;
}
.lrw-title{
	font-family:"Playfair Display","Marcellus",Georgia,serif;
	font-weight:600;
	font-size:clamp(30px,4vw,46px);
	line-height:1.15;
	color:var(--lrw-ink);
	margin:0 0 14px;
}
.lrw-sub{
	max-width:620px;
	color:var(--lrw-muted);
	font-size:16px;line-height:1.7;
	margin:0 auto;
}
.lrw-header[style*="text-align: left"] .lrw-sub{margin-left:0;}
.lrw-header[style*="text-align: right"] .lrw-sub{margin-right:0;}

/* ---------- Filter tabs ---------- */
.lrw-tabs{
	display:flex;flex-wrap:wrap;gap:10px;
	justify-content:center;
	margin:32px 0 34px;
}
.lrw-tab{
	--cat:var(--lrw-accent);
	font-size:14px;font-weight:600;
	padding:11px 22px;
	border-radius:999px;
	border:1px solid var(--lrw-line);
	background:#fff;
	color:var(--lrw-muted);
	cursor:pointer;
	transition:all .25s ease;
}
.lrw-tab:hover{border-color:var(--lrw-ink);color:var(--lrw-ink);}
.lrw-tab:focus-visible{outline:2px solid var(--lrw-ink);outline-offset:2px;}
.lrw-tab.lrw-active{background:var(--cat);border-color:var(--cat);color:#fff;}
/* Jab "category color for tabs" off ho */
.lrw-no-cat-tabs .lrw-tab.lrw-active{background:var(--lrw-ink);border-color:var(--lrw-ink);}

/* ---------- Grid & cards ---------- */
.lrw-grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:24px;
}

.lrw-card{
	--cat:var(--lrw-accent);
	background:var(--lrw-card);
	border:1px solid var(--lrw-line);
	border-radius:14px;
	padding:30px 28px 24px;
	display:flex;flex-direction:column;
	position:relative;overflow:hidden;
	transition:transform .3s ease, box-shadow .3s ease;
}
.lrw-card:hover{
	transform:translateY(-5px);
	box-shadow:0 18px 40px rgba(10,10,31,.10);
}
.lrw-card::before{
	content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
	background:var(--cat);
}
.lrw-no-side .lrw-card::before{display:none;}
.lrw-card.lrw-hide{display:none;}
.lrw-card.lrw-in{animation:lrwIn .4s ease both;}
@keyframes lrwIn{
	from{opacity:0;transform:translateY(12px);}
	to{opacity:1;transform:none;}
}
@media (prefers-reduced-motion:reduce){
	.lrw-card,.lrw-tab{transition:none;}
	.lrw-card.lrw-in{animation:none;}
}

.lrw-qmark{
	font-family:"Playfair Display","Marcellus",Georgia,serif;
	font-size:56px;line-height:.55;
	color:var(--cat);
	margin-bottom:14px;
	user-select:none;
}
.lrw-stars{
	color:#E2A400;
	font-size:15px;letter-spacing:2px;
	margin-bottom:12px;
}
.lrw-text{
	font-size:15.5px;line-height:1.7;
	color:#3c3f4a;
	margin:0 0 22px;
	flex:1;
}

.lrw-person{
	display:flex;align-items:center;gap:13px;
	border-top:1px solid var(--lrw-line);
	padding-top:18px;
}
.lrw-avatar{
	width:48px;height:48px;border-radius:50%;flex-shrink:0;
	background:var(--cat);color:#fff;
	display:flex;align-items:center;justify-content:center;
	font-family:"Playfair Display",Georgia,serif;
	font-size:18px;
	overflow:hidden;
}
.lrw-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.lrw-meta{min-width:0;}
.lrw-name{font-weight:700;font-size:15px;margin:0;color:var(--lrw-ink);}
.lrw-role{font-size:13px;color:var(--lrw-muted);margin:2px 0 0;}
.lrw-badge{
	margin-left:auto;
	font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
	color:var(--cat);
	border:1px solid var(--cat);
	border-radius:999px;
	padding:4px 10px;
	white-space:nowrap;
}

/* ---------- Responsive ---------- */
@media (max-width:1024px){
	.lrw-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
	.lrw-grid{grid-template-columns:1fr;}
	.lrw-badge{display:none;}
}

/* ============================================================
   SLIDER WIDGET (lrws) — Big photo + quote design
   Photo default 460px (bara), Elementor se 200–700px adjustable
   ============================================================ */

.lrws{
	--lrws-ink:#0A0A1F;
	--lrws-muted:#6b6f7b;
	--lrws-accent:#E04D2F;
	--lrws-blob:#F2B705;
	position:relative;
	padding:40px 0;
	color:var(--lrws-ink);
}

.lrws-track{position:relative;}

.lrws-slide{
	display:none;
	grid-template-columns:1fr 1.05fr;
	gap:56px;
	align-items:center;
}
.lrws-slide.lrws-current{display:grid;animation:lrwsFade .5s ease both;}
.lrws-photo-right .lrws-slide{grid-template-columns:1.05fr 1fr;}
.lrws-photo-right .lrws-photo-col{order:2;}
.lrws-photo-right .lrws-content-col{order:1;}

@keyframes lrwsFade{
	from{opacity:0;transform:translateY(14px);}
	to{opacity:1;transform:none;}
}
@media (prefers-reduced-motion:reduce){
	.lrws-slide.lrws-current{animation:none;}
}

/* ---------- Photo (BARI) ---------- */
.lrws-photo-col{display:flex;justify-content:center;}
.lrws-photo{
	position:relative;
	width:460px;height:460px;
	max-width:100%;
	flex-shrink:0;
}
.lrws-blob{
	position:absolute;inset:0;
	background:var(--lrws-blob);
	border-radius:50%;
	transform:translate(-4%,-3%) scale(1.02);
}
.lrws-photo img{
	position:relative;z-index:1;
	width:100%;height:100%;
	object-fit:cover;object-position:center top;
	border-radius:50%;
	display:block;
}
/* Shape variations */
.lrws-shape-rounded .lrws-blob,
.lrws-shape-rounded .lrws-photo img{border-radius:28px;}
.lrws-shape-blob .lrws-blob{
	border-radius:58% 42% 55% 45% / 48% 55% 45% 52%;
}
.lrws-shape-blob .lrws-photo img{
	border-radius:52% 48% 45% 55% / 55% 45% 55% 45%;
}

/* ---------- Content ---------- */
.lrws-qmark{
	font-family:"Playfair Display","Marcellus",Georgia,serif;
	font-size:72px;line-height:.5;
	color:var(--lrws-accent);
	opacity:.35;
	margin-bottom:22px;
	user-select:none;
}
.lrws-text{
	font-size:clamp(16px,1.6vw,19px);
	line-height:1.75;
	color:#3c3f4a;
	margin:0 0 26px;
}
.lrws-category{
	font-family:"Playfair Display",Georgia,serif;
	font-style:italic;
	font-weight:700;
	font-size:24px;
	color:var(--lrws-accent);
	margin-bottom:6px;
}
.lrws-name{
	font-weight:700;font-size:15.5px;
	color:var(--lrws-ink);
	margin:0;
}
.lrws-name span{font-weight:500;color:var(--lrws-muted);}

/* ---------- Arrows ---------- */
.lrws-nav{
	display:flex;gap:12px;
	margin-top:34px;
	justify-content:flex-start;
	padding-left:calc(50% + 28px);
}
.lrws-photo-right .lrws-nav{padding-left:0;padding-right:calc(50% + 28px);}
.lrws-arrow{
	width:56px;height:44px;
	border:none;border-radius:999px;
	background:#fff;
	color:var(--lrws-ink);
	font-size:19px;
	cursor:pointer;
	box-shadow:0 8px 24px rgba(10,10,31,.10);
	transition:all .25s ease;
	display:flex;align-items:center;justify-content:center;
}
.lrws-arrow:hover{background:var(--lrws-accent);color:#fff;transform:translateY(-2px);}
.lrws-arrow:focus-visible{outline:2px solid var(--lrws-ink);outline-offset:2px;}

/* ---------- Dots ---------- */
.lrws-dots{
	display:flex;gap:8px;justify-content:center;margin-top:26px;
}
.lrws-dot{
	width:9px;height:9px;border-radius:50%;
	border:none;cursor:pointer;
	background:#d5d5dc;
	transition:all .25s ease;
	padding:0;
}
.lrws-dot.lrws-active{background:var(--lrws-accent);transform:scale(1.35);}

/* ---------- Responsive ---------- */
@media (max-width:920px){
	.lrws-slide,
	.lrws-photo-right .lrws-slide{
		grid-template-columns:1fr;
		gap:36px;
		text-align:center;
	}
	.lrws-photo-right .lrws-photo-col{order:0;}
	.lrws-photo-right .lrws-content-col{order:1;}
	.lrws-qmark{margin-left:auto;margin-right:auto;}
	.lrws-nav,
	.lrws-photo-right .lrws-nav{
		padding:0;justify-content:center;
	}
}
