/* XFF Verify Page */
.xffv{
	--a:#e11d2e;--a-soft:rgba(225,29,46,.12);--a-ring:rgba(225,29,46,.38);
	--ink:#0f172a;--mut:#475569;--line:#e3e6ea;--bg:#f3f4f6;--card:#fff;
	display:block;width:100%;max-width:1120px;margin:0 auto;
	padding:clamp(12px,2.6vw,28px);
	background:var(--bg);color:var(--ink);border-radius:24px;
	font-size:17px;line-height:1.7;text-align:left;box-sizing:border-box;overflow:hidden;
}
.xffv *,.xffv *::before,.xffv *::after{box-sizing:border-box}
.xffv svg{fill:currentColor;display:block}
.xffv [hidden]{display:none!important}

/* Hide the theme's own page title on this page */
body.xffv-hide-title .entry-title,
body.xffv-hide-title .page-title,
body.xffv-hide-title .wp-block-post-title,
body.xffv-hide-title .elementor-page-title,
body.xffv-hide-title h1.entry-title{display:none!important}

/* Reveal animations */
.xffv-js .xffv-reveal{
	opacity:0;transform:translateY(28px);
	transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);
	transition-delay:var(--d,0ms);
}
.xffv-js .xffv-reveal.is-in{opacity:1;transform:none}
.xffv-js .xffv-reveal.is-done{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,opacity .3s ease;transition-delay:0ms}

.xffv-sec{margin-top:clamp(22px,3.6vw,40px)}

/* Headings & text */
.xffv .xffv-h1{
	font-size:clamp(28px,5vw,50px);line-height:1.12;margin:0 0 20px;color:#fff;
	font-weight:800;letter-spacing:-.02em;text-align:left;
}
.xffv .xffv-h1 span{color:var(--a);display:block}
.xffv .xffv-h2{
	font-size:clamp(22px,3.2vw,32px);line-height:1.2;margin:0 0 18px;color:var(--ink);
	font-weight:800;letter-spacing:-.01em;position:relative;padding-bottom:14px;text-align:left;
}
.xffv .xffv-h2::after{content:"";position:absolute;left:0;bottom:0;width:54px;height:4px;border-radius:4px;background:var(--a)}
.xffv .xffv-h3{font-size:20px;line-height:1.3;margin:0 0 16px;color:var(--ink);font-weight:700;text-align:left}
.xffv .xffv-p{margin:0 0 14px;color:var(--mut);text-align:left}
.xffv .xffv-lead{margin:0 0 14px;color:rgba(255,255,255,.82);font-size:clamp(16px,2vw,18.5px);text-align:left}
.xffv .xffv-lead:last-child{margin-bottom:0}

/* Hero */
.xffv-hero{
	position:relative;overflow:hidden;border-radius:20px;color:#fff;
	background:radial-gradient(900px 400px at 100% 0%,rgba(225,29,46,.28),transparent 60%),linear-gradient(135deg,#0b0f19 0%,#161b2a 60%,#220c11 100%);
	padding:clamp(26px,5.5vw,64px);
	display:grid;grid-template-columns:1.5fr .5fr;gap:28px;align-items:center;
}
.xffv-hero-art{display:flex;justify-content:flex-end}
.xffv-shield{
	width:clamp(96px,16vw,170px);height:clamp(96px,16vw,170px);border-radius:32px;
	display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,var(--a),#7f1020);
	box-shadow:0 20px 60px -15px var(--a-ring),inset 0 0 0 1px rgba(255,255,255,.18);
	animation:xffv-float 4.5s ease-in-out infinite;
}
.xffv-shield svg{width:56%;height:56%}
@keyframes xffv-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-12px) rotate(3deg)}}

/* Steps */
.xffv-steps{list-style:none;margin:6px 0 0;padding:0;counter-reset:xs}
.xffv-steps li{position:relative;margin:0;padding:0 0 18px 62px;counter-increment:xs}
.xffv-steps li::before{
	content:counter(xs);position:absolute;left:0;top:2px;width:44px;height:44px;border-radius:50%;
	background:var(--a);color:#fff;display:grid;place-items:center;font-weight:800;font-size:18px;
	box-shadow:0 8px 18px -6px var(--a-ring);transition:transform .3s;
}
.xffv-steps li::after{content:"";position:absolute;left:21px;top:50px;bottom:-2px;width:2px;background:var(--line)}
.xffv-steps li:last-child{padding-bottom:0}
.xffv-steps li:last-child::after{display:none}
.xffv-steps li:hover::before{transform:scale(1.12) rotate(-6deg)}
.xffv-step{
	background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 18px;color:var(--ink);
	transition:transform .3s,box-shadow .3s,border-color .3s;
}
.xffv-steps li:hover .xffv-step{transform:translateX(6px);box-shadow:0 12px 30px -16px rgba(15,23,42,.35);border-color:var(--a)}

.xffv-note{
	margin-top:22px;display:flex;gap:14px;align-items:flex-start;
	background:var(--a-soft);border-left:4px solid var(--a);border-radius:12px;padding:16px 18px;
}
.xffv-note svg{width:28px;height:28px;flex:none;color:var(--a);margin-top:2px}
.xffv .xffv-note p{margin:0;color:var(--ink);font-weight:500}

/* Cards */
.xffv-duo{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.xffv-card{
	background:var(--card);border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,32px);
}
.xffv-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px rgba(15,23,42,.4);border-color:rgba(0,0,0,.08)}
.xffv-js .xffv-card.xffv-reveal:not(.is-done):hover{transform:none}
.xffv-ico{
	width:52px;height:52px;border-radius:14px;display:grid;place-items:center;margin-bottom:16px;
	background:var(--a-soft);color:var(--a);transition:transform .35s;
}
.xffv-ico svg{width:28px;height:28px}
.xffv-card:hover .xffv-ico{transform:rotate(-8deg) scale(1.08)}

.xffv-closing{
	margin-top:20px;border-radius:18px;padding:clamp(20px,3.4vw,34px);color:#fff;
	background:linear-gradient(120deg,var(--a),#7f1020);
	box-shadow:0 22px 40px -22px var(--a-ring);
}
.xffv .xffv-closing p{margin:0;color:#fff;font-size:clamp(17px,2.2vw,21px);line-height:1.55;text-align:left}

/* Video player */
.xffv-player{border-radius:18px;overflow:hidden;background:#000;box-shadow:0 24px 50px -22px rgba(2,6,23,.6)}
.xffv-stage{position:relative;aspect-ratio:16/9;background:#000;outline:none;-webkit-user-select:none;user-select:none;cursor:pointer;overflow:hidden}
.xffv-stage:focus-visible{box-shadow:inset 0 0 0 3px var(--a)}
.xffv-media{position:absolute;inset:0}
.xffv-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}
.xffv-media iframe{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none}
.xffv-cover{position:absolute;inset:0;background:#000 center/cover no-repeat;opacity:0;visibility:hidden;transition:opacity .3s}
.xffv-cover.is-on{opacity:1;visibility:visible}

.xffv .xffv-bigplay{
	position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;padding:0;
	border:0;border-radius:50%;background:var(--a);color:#fff;display:grid;place-items:center;cursor:pointer;
	animation:xffv-pulse 2.2s infinite;transition:transform .25s,opacity .25s;
}
.xffv .xffv-bigplay svg{width:40px;height:40px;margin-left:4px}
.xffv .xffv-bigplay:hover{transform:scale(1.1)}
.xffv-stage.is-playing .xffv-bigplay{opacity:0;pointer-events:none;transform:scale(.7);animation:none}
@keyframes xffv-pulse{0%{box-shadow:0 0 0 0 var(--a-ring)}70%{box-shadow:0 0 0 22px rgba(0,0,0,0)}100%{box-shadow:0 0 0 0 rgba(0,0,0,0)}}

.xffv-controls{
	position:absolute;left:0;right:0;bottom:0;padding:38px 14px 10px;color:#fff;cursor:default;
	background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,0));
	transition:opacity .3s,transform .3s;
}
.xffv-stage.is-playing.is-idle .xffv-controls{opacity:0;transform:translateY(8px);pointer-events:none}
.xffv-stage.is-playing.is-idle{cursor:none}
.xffv-row{display:flex;align-items:center;gap:4px}
.xffv .xffv-ib{
	appearance:none;-webkit-appearance:none;background:none;border:0;box-shadow:none;margin:0;padding:0;
	min-width:40px;height:40px;border-radius:10px;color:#fff;display:grid;place-items:center;cursor:pointer;
	font:inherit;font-size:14px;font-weight:700;line-height:1;text-transform:none;letter-spacing:0;
	transition:background .2s,transform .2s;
}
.xffv .xffv-ib:hover{background:rgba(255,255,255,.18)}
.xffv .xffv-ib:active{transform:scale(.9)}
.xffv .xffv-ib svg{width:26px;height:26px}
.xffv-ib .i-pause,.xffv-ib .i-mute,.xffv-ib .i-fsx{display:none}
.xffv-stage.is-playing .xffv-b-play .i-play{display:none}
.xffv-stage.is-playing .xffv-b-play .i-pause{display:block}
.xffv-stage.is-muted .xffv-b-vol .i-vol{display:none}
.xffv-stage.is-muted .xffv-b-vol .i-mute{display:block}
.xffv-player.is-fs .xffv-b-fs .i-fs{display:none}
.xffv-player.is-fs .xffv-b-fs .i-fsx{display:block}
.xffv-time{font-size:13.5px;font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:6px;color:rgba(255,255,255,.92)}
.xffv-sp{flex:1}

.xffv input[type=range]{
	-webkit-appearance:none;appearance:none;background:transparent;margin:0;padding:0;border:0;cursor:pointer;--p:0%;
}
.xffv .xffv-seek{display:block;width:100%;height:18px;margin-bottom:2px}
.xffv .xffv-vol{width:84px;height:18px;margin:0 6px}
.xffv input[type=range]::-webkit-slider-runnable-track{height:5px;border-radius:5px;background:linear-gradient(to right,var(--a) var(--p),rgba(255,255,255,.3) var(--p))}
.xffv input[type=range]::-moz-range-track{height:5px;border-radius:5px;background:rgba(255,255,255,.3)}
.xffv input[type=range]::-moz-range-progress{height:5px;border-radius:5px;background:var(--a)}
.xffv input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-4.5px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 3px var(--a-ring)}
.xffv input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 0 3px var(--a-ring)}

.xffv-sharemenu{
	position:absolute;right:12px;bottom:70px;z-index:6;min-width:210px;padding:8px;border-radius:14px;
	background:#fff;color:#0f172a;box-shadow:0 20px 44px -10px rgba(0,0,0,.55);
	opacity:0;visibility:hidden;transform:translateY(10px) scale(.97);transition:opacity .2s,transform .2s,visibility .2s;cursor:default;
}
.xffv-sharemenu.is-open{opacity:1;visibility:visible;transform:none}
.xffv .xffv-sharemenu a,.xffv .xffv-sharemenu button{
	display:flex;align-items:center;gap:12px;width:100%;margin:0;padding:10px 12px;border:0;border-radius:9px;background:none;
	color:#0f172a;font:inherit;font-size:15px;font-weight:500;text-align:left;text-decoration:none;cursor:pointer;box-shadow:none;text-transform:none;
}
.xffv .xffv-sharemenu a:hover,.xffv .xffv-sharemenu button:hover{background:var(--a-soft)}
.xffv .xffv-sharemenu svg{width:20px;height:20px;color:var(--a);flex:none}

.xffv-stage:fullscreen{width:100vw;height:100vh;aspect-ratio:auto}
.xffv-stage:-webkit-full-screen{width:100vw;height:100vh;aspect-ratio:auto}

/* Like / dislike */
.xffv-react{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.xffv .xffv-rb{
	display:inline-flex;align-items:center;gap:9px;padding:10px 20px;border-radius:999px;cursor:pointer;
	background:var(--card);color:var(--ink);border:1.5px solid var(--line);box-shadow:none;
	font:inherit;font-size:16px;font-weight:600;line-height:1;text-transform:none;
	transition:transform .2s,background .2s,color .2s,border-color .2s,box-shadow .2s;
}
.xffv .xffv-rb svg{width:22px;height:22px}
.xffv .xffv-rb .xffv-flip{transform:rotate(180deg)}
.xffv .xffv-rb b{font-weight:700;min-width:1ch;font-variant-numeric:tabular-nums}
.xffv .xffv-rb:hover{transform:translateY(-3px);border-color:var(--a);box-shadow:0 12px 24px -14px var(--a-ring)}
.xffv .xffv-rb:active{transform:scale(.95)}
.xffv .xffv-rb.is-on{background:var(--a);border-color:var(--a);color:#fff}

/* Comments */
.xffv-comments{margin-top:18px}
.xffv-ccount{color:var(--mut);font-weight:600;font-size:16px}
.xffv-cform{display:grid;gap:12px;margin-bottom:6px}
.xffv .xffv-in{
	width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);
	font:inherit;font-size:16px;line-height:1.5;box-shadow:none;margin:0;resize:vertical;transition:border-color .2s,box-shadow .2s;
}
.xffv .xffv-in:focus{outline:none;border-color:var(--a);box-shadow:0 0 0 4px var(--a-soft)}
.xffv .xffv-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.xffv-cbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.xffv .xffv-btn{
	display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border:0;border-radius:999px;cursor:pointer;
	background:var(--a);color:#fff;font:inherit;font-size:16px;font-weight:700;line-height:1;text-transform:none;
	box-shadow:0 10px 22px -10px var(--a);transition:transform .2s,box-shadow .2s,opacity .2s;
}
.xffv .xffv-btn:hover{transform:translateY(-2px);box-shadow:0 16px 28px -12px var(--a)}
.xffv .xffv-btn:disabled{opacity:.6;cursor:wait;transform:none}
.xffv-cmsg{font-size:15px;color:var(--mut)}
.xffv-cmsg.is-err{color:#b91c1c}
.xffv-cmsg.is-ok{color:#15803d}
.xffv-clist{list-style:none;margin:18px 0 0;padding:0}
.xffv-clist li{margin:0;padding:14px 0;border-top:1px solid var(--line);animation:xffv-in .4s ease both}
.xffv-clist .xffv-cn{font-weight:700;color:var(--ink)}
.xffv-clist .xffv-cd{font-size:13.5px;color:var(--mut);margin-left:8px}
.xffv-clist .xffv-ct{margin:4px 0 0;color:var(--ink);white-space:pre-line;word-break:break-word}
.xffv-empty{color:var(--mut);border-top:1px solid var(--line);padding-top:14px}
@keyframes xffv-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Brands */
.xffv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px;margin-top:6px}
.xffv-brand{
	background:var(--card);border:1px solid var(--line);border-radius:18px;padding:8px 8px 10px;
}
.xffv-brand:hover{transform:translateY(-5px);box-shadow:0 24px 44px -24px rgba(15,23,42,.45);border-color:var(--a)}
.xffv-js .xffv-brand.xffv-reveal:not(.is-done):hover{transform:none}
.xffv .xffv-brand-link{
	display:grid;grid-template-columns:62px 1fr;gap:6px 14px;align-items:center;padding:12px;border-radius:12px;
	color:var(--ink);text-decoration:none;box-shadow:none;border:0;
}
.xffv-logo{
	width:62px;height:62px;border-radius:14px;background:#f8fafc;border:1px solid var(--line);
	display:grid;place-items:center;overflow:hidden;transition:transform .35s;
}
.xffv-logo img{width:100%;height:100%;object-fit:contain;padding:6px;display:block}
.xffv-logo b{font-size:26px;font-weight:800;color:var(--a)}
.xffv-brand:hover .xffv-logo{transform:scale(1.08) rotate(-3deg)}
.xffv-bi{display:block;min-width:0}
.xffv-bn{display:block;font-weight:800;font-size:18px;line-height:1.25;color:var(--ink);word-break:break-word}
.xffv-be{display:block;font-size:13.5px;color:var(--mut);word-break:break-all;line-height:1.4;margin-top:2px}
.xffv-go{
	grid-column:1/-1;display:flex;align-items:center;gap:9px;margin-top:6px;padding:11px 16px;border-radius:999px;
	background:var(--a);color:#fff;font-weight:700;font-size:15.5px;transition:box-shadow .25s;
}
.xffv-go svg{width:20px;height:20px;flex:none}
.xffv-go .xffv-arr{margin-left:auto;transition:transform .25s}
.xffv-brand:hover .xffv-go{box-shadow:0 12px 22px -10px var(--a)}
.xffv-brand:hover .xffv-arr{transform:translateX(5px)}
.xffv .xffv-alt{display:inline-block;margin:2px 0 0 12px;font-size:13px;color:var(--mut);text-decoration:underline;text-underline-offset:3px;box-shadow:none;border:0}
.xffv .xffv-alt:hover{color:var(--a)}

/* Responsive */
@media (max-width:820px){
	.xffv-hero{grid-template-columns:1fr}
	.xffv-hero-art{display:none}
	.xffv-duo{grid-template-columns:1fr}
}
@media (max-width:600px){
	.xffv{font-size:16px;border-radius:18px}
	.xffv-steps li{padding-left:54px}
	.xffv-steps li::before{width:38px;height:38px;font-size:16px}
	.xffv-steps li::after{left:18px;top:44px}
	.xffv .xffv-ib{min-width:36px;height:36px}
	.xffv .xffv-ib svg{width:23px;height:23px}
	.xffv-b-vol,.xffv-vol,.xffv-b-speed{display:none!important}
	.xffv-time{font-size:12.5px;margin-left:2px}
	.xffv-controls{padding:30px 8px 6px}
	.xffv .xffv-bigplay{width:68px;height:68px;margin:-34px 0 0 -34px}
	.xffv .xffv-bigplay svg{width:32px;height:32px}
	.xffv-sharemenu{bottom:60px;right:8px}
}

/* Brands slider: hint + dots (shown on phones only) */
.xffv-slider{position:relative}
.xffv-hint,.xffv-dots{display:none}

@media (max-width:700px){
	.xffv-grid{
		display:grid;grid-template-columns:none;grid-template-rows:repeat(2,auto);
		grid-auto-flow:column;grid-auto-columns:84%;gap:12px;
		overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;
		-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;
		margin:6px -4px 0;padding:4px 4px 10px;
	}
	.xffv-grid::-webkit-scrollbar{display:none}
	.xffv-brand{scroll-snap-align:start;padding:6px 6px 8px}
	.xffv-js .xffv-brand.xffv-reveal{opacity:1;transform:none;transition-delay:0ms}
	.xffv .xffv-brand-link{grid-template-columns:50px 1fr;gap:4px 12px;padding:8px}
	.xffv-logo{width:50px;height:50px;border-radius:12px}
	.xffv-logo b{font-size:22px}
	.xffv-bn{font-size:16px}
	.xffv-be{font-size:12.5px}
	.xffv-go{padding:9px 14px;font-size:14.5px;margin-top:4px}
	.xffv .xffv-alt{margin:0 0 0 8px;font-size:12px}

	/* soft fade on the right edge so people see there is more */
	.xffv-slider::after{
		content:"";position:absolute;top:0;right:-1px;bottom:44px;width:36px;pointer-events:none;
		background:linear-gradient(to right,rgba(243,244,246,0),var(--bg));opacity:0;transition:opacity .3s;
	}
	.xffv-slider.has-more:not(.at-end)::after{opacity:1}

	.xffv-slider.has-more .xffv-hint{
		display:flex;align-items:center;gap:8px;margin:2px 0 0;
		font-size:13.5px;font-weight:600;color:var(--mut);
		max-height:30px;overflow:hidden;transition:opacity .4s,max-height .4s,margin .4s;
	}
	.xffv-hint svg{width:18px;height:18px;color:var(--a);animation:xffv-nudge 1.2s ease-in-out infinite}
	.xffv-slider.touched .xffv-hint{opacity:0;max-height:0;margin:0}
	@keyframes xffv-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(7px)}}

	.xffv-slider.has-more .xffv-dots{display:flex;justify-content:flex-start;gap:7px;margin-top:10px}
	.xffv .xffv-dots button{
		appearance:none;-webkit-appearance:none;width:8px;height:8px;min-width:0;padding:0;margin:0;border:0;border-radius:8px;
		background:#cbd5e1;box-shadow:none;cursor:pointer;transition:width .3s,background .3s;
	}
	.xffv .xffv-dots button.is-on{width:24px;background:var(--a)}
}
@media (hover:none) and (pointer:coarse){
	.xffv-vol{display:none}
}

@media (prefers-reduced-motion:reduce){
	.xffv *,.xffv *::before,.xffv *::after{animation:none!important;transition:none!important}
	.xffv-js .xffv-reveal{opacity:1;transform:none}
}
