/* =========================================================
   HERO
   ========================================================= */

.prr-photo-hero{
	position:relative;
	overflow:hidden;
	padding:60px 35px 60px;
	background:
		linear-gradient(
			135deg,
			#FCFCFE 0%,
			#F7F8FD 35%,
			#F3F7F6 100%
		);
	isolation:isolate;
	border-radius: 35px;
	margin-bottom: 40px;
}

/* =========================================================
   BACKGROUND
   ========================================================= */

.prr-photo-hero-bg{
	position:absolute;
	inset:0;

	background:
		radial-gradient(
			circle at top left,
			rgba(90,80,200,.14),
			transparent 36%
		),

		radial-gradient(
			circle at bottom right,
			rgba(47,125,107,.10),
			transparent 34%
		);

	pointer-events:none;
	z-index:1;
}

.prr-photo-hero-noise{
	position:absolute;
	inset:0;

	background-image:
		radial-gradient(rgba(15,23,42,.025) 1px, transparent 1px);

	background-size:18px 18px;

	opacity:.45;
	mix-blend-mode:multiply;

	pointer-events:none;
	z-index:1;
}

.prr-photo-hero-glow{
	position:absolute;
	border-radius:50%;

	filter:blur(100px);

	pointer-events:none;
	z-index:1;
}

.prr-photo-hero-glow-1{
	width:420px;
	height:420px;

	background:rgba(90,80,200,.14);

	top:-180px;
	right:-120px;
}

.prr-photo-hero-glow-2{
	width:320px;
	height:320px;

	background:rgba(47,125,107,.12);

	left:-120px;
	bottom:-140px;
}

/* =========================================================
   INNER
   ========================================================= */

.prr-photo-hero-inner{
	position:relative;
	z-index:2;

	display:grid;
	grid-template-columns:minmax(0,720px) 1fr;
	gap:40px;
	align-items:center;
}

/* =========================================================
   LEFT
   ========================================================= */

.prr-photo-hero-content{
	max-width:760px;
}

.prr-photo-hero-label{
	display:inline-flex;
	align-items:center;
	gap:10px;

	padding:11px 18px;

	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,.92),
			rgba(255,255,255,.74)
		);

	border:1px solid rgba(255,255,255,.8);

	backdrop-filter:blur(10px);

	border-radius:999px;

	box-shadow:
		0 10px 30px rgba(15,23,42,.06);

	font-size:14px;
	font-weight:700;

	color:#334155;

	margin-bottom:30px;
}

.prr-photo-hero-label i{
	width:18px;
	height:18px;

	color:#5A50C8;
}

.prr-photo-hero-title{
	margin:0 0 28px;

	font-size:76px;
	line-height:.95;
	letter-spacing:-0.06em;

	font-weight:840;

	color:#0F172A;
}

.prr-photo-hero-text{
	max-width:760px;

	font-size:22px;
	line-height:1.75;

	color:#475569;

	margin-bottom:46px;
}

/* =========================================================
   BUTTONS
   ========================================================= */

.prr-photo-hero-actions{
	display:flex;
	flex-wrap:wrap;
	gap:18px;

	margin-bottom:56px;
}

.prr-photo-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:12px;

	min-height:62px;
	padding:0 30px;

	border-radius:18px;

	font-size:16px;
	font-weight:700;

	text-decoration:none;

	transition:
		transform .25s ease,
		box-shadow .25s ease,
		background .25s ease,
		border-color .25s ease;
}

.prr-photo-btn i{
	width:20px;
	height:20px;
}

/* PRIMARY */

.prr-photo-btn-primary{
	background:
		linear-gradient(
			135deg,
			#2F7D6B,
			#25695A
		);

	color:#FFFFFF;

	box-shadow:
		0 20px 50px rgba(47,125,107,.24);
}

.prr-photo-btn-primary:hover{
	transform:translateY(-3px);

	box-shadow:
		0 26px 60px rgba(47,125,107,.32);
}

/* SECONDARY */

.prr-photo-btn-secondary{
	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,.94),
			rgba(255,255,255,.76)
		);

	border:1px solid rgba(255,255,255,.9);

	backdrop-filter:blur(12px);

	color:#5A50C8;

	box-shadow:
		0 12px 34px rgba(15,23,42,.05);
}

.prr-photo-btn-secondary:hover{
	transform:translateY(-3px);

	border-color:#D6D2F3;
}

/* =========================================================
   TRIGGERS
   ========================================================= */

.prr-photo-hero-triggers{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:18px;
}

.prr-photo-trigger{
	display:flex;
	align-items:flex-start;
	gap:16px;

	padding:22px;

	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,.88),
			rgba(255,255,255,.72)
		);

	border:1px solid rgba(255,255,255,.8);

	backdrop-filter:blur(14px);

	border-radius:22px;

	box-shadow:
		0 12px 34px rgba(15,23,42,.05);

	transition:
		transform .25s ease,
		box-shadow .25s ease,
		border-color .25s ease;
}

.prr-photo-trigger:hover{
	transform:translateY(-4px);

	border-color:#D6DBF5;

	box-shadow:
		0 20px 50px rgba(90,80,200,.10);
}

.prr-photo-trigger-icon{
	width:48px;
	height:48px;
	flex:0 0 48px;

	display:flex;
	align-items:center;
	justify-content:center;

	border-radius:16px;

	background:#EEF2FF;

	color:#5A50C8;
}

.prr-photo-trigger-icon i{
	width:20px;
	height:20px;
}

.prr-photo-trigger-text{
	font-size:15px;
	line-height:1.65;

	font-weight:700;

	color:#334155;
}

/* =========================================================
   VISUAL
   ========================================================= */

.prr-photo-hero-visual{
	position:relative;

	display:flex;
	align-items:center;
	justify-content:center;
}

.prr-photo-hero-scene{
	position:relative;

	width:520px;
	height:560px;
}

/* =========================================================
   MAIN CARD
   ========================================================= */

.prr-photo-shot{
	position:absolute;

	border-radius:32px;

	backdrop-filter:blur(18px);

	overflow:hidden;
}

.prr-photo-shot-main{
	left:0;
	top:40px;

	width:340px;

	padding:22px;

	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,.90),
			rgba(255,255,255,.72)
		);

	border:1px solid rgba(255,255,255,.85);

	box-shadow:
		0 40px 80px rgba(15,23,42,.12);

	z-index:3;
}

.prr-photo-shot-top{
	display:flex;
	gap:8px;

	margin-bottom:18px;
}

.prr-photo-shot-dot{
	width:10px;
	height:10px;

	border-radius:50%;

	background:#D6D2F3;
}

.prr-photo-shot-image-hero{
	height:240px;

	border-radius:24px;

	display:flex;
	align-items:center;
	justify-content:center;

	background:
		linear-gradient(
			135deg,
			#EEF2FF,
			#E6F4F1
		);

	margin-bottom:22px;
}

.prr-photo-shot-image-hero .lucide {
    width: 120px;
    height: 120px;
}

.prr-photo-shot-image i{
	width:76px;
	height:76px;

	color:#5A50C8;

	opacity:.85;
}

.prr-photo-shot-footer{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
}

.prr-photo-shot-title{
	font-size:16px;
	font-weight:700;

	color:#0F172A;
}

.prr-photo-shot-status{
	display:inline-flex;
	align-items:center;
	justify-content:center;

	padding:8px 14px;

	border-radius:999px;

	background:#E6F4F1;

	color:#1F5C4F;

	font-size:13px;
	font-weight:700;
}

/* =========================================================
   COPY CARD
   ========================================================= */

.prr-photo-shot-copy{
	right:10px;
	bottom:70px;

	width:250px;

	padding:18px;

	background:
		linear-gradient(
			180deg,
			rgba(17,24,39,.92),
			rgba(15,23,42,.86)
		);

	border:1px solid rgba(255,255,255,.08);

	box-shadow:
		0 30px 70px rgba(15,23,42,.28);

	transform:rotate(8deg);

	z-index:2;
}

.prr-photo-copy-badge{
	display:inline-flex;
	align-items:center;
	gap:8px;

	padding:8px 12px;

	border-radius:999px;

	background:rgba(239,68,68,.12);

	color:#FCA5A5;

	font-size:13px;
	font-weight:700;

	margin-bottom:16px;
}

.prr-photo-copy-badge i{
	width:16px;
	height:16px;
}

.prr-photo-shot-copy .prr-photo-shot-image{
	height:180px;

	background:
		linear-gradient(
			135deg,
			rgba(90,80,200,.18),
			rgba(239,68,68,.10)
		);
}

.prr-photo-shot-copy .prr-photo-shot-image i{
	color:#CBD5E1;
}

/* =========================================================
   FLOATING ALERT
   ========================================================= */

.prr-photo-floating-card{
	position:absolute;

	right:-20px;
	top:120px;

	display:flex;
	align-items:center;
	gap:14px;

	padding:18px 20px;

	border-radius:22px;

	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,.92),
			rgba(255,255,255,.76)
		);

	border:1px solid rgba(255,255,255,.9);

	backdrop-filter:blur(16px);

	box-shadow:
		0 20px 50px rgba(15,23,42,.10);

	z-index:5;
}

.prr-photo-floating-icon{
	width:48px;
	height:48px;

	display:flex;
	align-items:center;
	justify-content:center;

	border-radius:16px;

	background:#FEF2F2;

	color:#DC2626;
}

.prr-photo-floating-icon i{
	width:22px;
	height:22px;
}

.prr-photo-floating-text{
	font-size:14px;
	line-height:1.55;

	font-weight:700;

	color:#0F172A;
}

/* =========================================================
   SCAN
   ========================================================= */

.prr-photo-scan-line{
	position:absolute;

	left:40px;
	top:220px;

	width:320px;
	height:2px;

	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(47,125,107,.7),
			transparent
		);

	box-shadow:
		0 0 18px rgba(47,125,107,.45);

	z-index:4;

	animation:prrPhotoScan 4s ease-in-out infinite;
}

@keyframes prrPhotoScan{

	0%{
		transform:translateY(-55px);
		opacity:.4;
	}

	50%{
		transform:translateY(40px);
		opacity:1;
	}

	100%{
		transform:translateY(-50px);
		opacity:.4;
	}

}

/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:1180px){

	.prr-photo-hero-inner{
		grid-template-columns:1fr;
	}

	.prr-photo-hero-visual{
		display:none;
	}

}

@media(max-width:768px){

	.prr-photo-hero{
		padding:90px 0 70px;
	}

	.prr-photo-hero-title{
		font-size:46px;
		line-height:1.02;
	}

	.prr-photo-hero-text{
		font-size:18px;
	}

	.prr-photo-hero-actions{
		flex-direction:column;
	}

	.prr-photo-btn{
		max-width:100%;
	}

	.prr-photo-hero-triggers{
		grid-template-columns:1fr;
	}

}

@media(max-width:480px){

	.prr-photo-hero{
		padding:76px 0 56px;
	}

	.prr-photo-hero-title{
		font-size:36px;
	}

	.prr-photo-trigger{
		padding:18px;
	}

}

/* =========================================================
   PHOTO PROBLEMS
   ========================================================= */

.prr-photo-problems{
	position:relative;
	overflow:hidden;
	padding:100px 35px;
	background:
		linear-gradient(
			180deg,
			#FFFFFF 0%,
			#F7F9FC 100%
		);
}

/* =========================================================
   BG
   ========================================================= */

.prr-photo-problems-bg{
	position:absolute;
	inset:0;
	background:
		radial-gradient(circle at top right,
			rgba(90,80,200,.08),
			transparent 34%),
		radial-gradient(circle at bottom left,
			rgba(47,125,107,.06),
			transparent 30%);
	pointer-events:none;
}

/* =========================================================
   CONTAINER
   ========================================================= */

.prr-photo-problems-container{
	position:relative;
	z-index:2;
}

/* =========================================================
   HEAD
   ========================================================= */

.prr-photo-problems-head{
	max-width:860px;
	margin:0 auto 64px;
	text-align:center;
}

.prr-photo-problems-label{
	display:inline-flex;
	align-items:center;
	gap:10px;

	padding:10px 18px;

	border-radius:999px;

	background:#EEF2FF;
	border:1px solid #D6D2F3;

	font-size:13px;
	font-weight:700;
	letter-spacing:.08em;
	text-transform:uppercase;

	color:#5A50C8;

	margin-bottom:24px;
}

.prr-photo-problems-label i{
	width:16px;
	height:16px;
}

.prr-photo-problems-title{
	margin:0 0 22px;

	font-size:clamp(38px,5vw,64px);
	line-height:1.02;
	letter-spacing:-0.04em;

	font-weight:800;

	color:#0F172A;
}

.prr-photo-problems-subtitle{
	font-size:19px;
	line-height:1.8;

	color:#64748B;
}

/* =========================================================
   GRID
   ========================================================= */

.prr-photo-problems-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:22px;
}

/* =========================================================
   CARD
   ========================================================= */

.prr-photo-problem-card{
	position:relative;

	padding:34px 30px;

	background:#FFFFFF;

	border:1px solid #E2E8F0;
	border-radius:28px;

	overflow:hidden;

	transition:
		transform .28s ease,
		border-color .28s ease,
		box-shadow .28s ease;
}

.prr-photo-problem-card::before{
	content:"";

	position:absolute;
	inset:0;

	background:
		linear-gradient(
			135deg,
			rgba(90,80,200,.04),
			rgba(47,125,107,.02)
		);

	opacity:0;

	transition:opacity .28s ease;
}

.prr-photo-problem-card:hover{
	transform:translateY(-6px);

	border-color:#D6DBF5;

	box-shadow:
		0 24px 60px rgba(15,23,42,.06);
}

.prr-photo-problem-card:hover::before{
	opacity:1;
}

/* =========================================================
   ICON
   ========================================================= */

.prr-photo-problem-icon{
	position:relative;
	z-index:2;

	width:64px;
	height:64px;

	display:flex;
	align-items:center;
	justify-content:center;

	border-radius:20px;

	background:
		linear-gradient(
			135deg,
			#EEF2FF 0%,
			#F4F3FB 100%
		);

	border:1px solid #D6D2F3;

	color:#5A50C8;

	margin-bottom:28px;
}

.prr-photo-problem-icon i{
	width:28px;
	height:28px;
	stroke-width:2;
}

/* =========================================================
   TEXT
   ========================================================= */

.prr-photo-problem-title{
	position:relative;
	z-index:2;

	margin:0 0 16px;

	font-size:24px;
	line-height:1.25;
	letter-spacing:-0.03em;

	font-weight:760;

	color:#0F172A;
}

.prr-photo-problem-text{
	position:relative;
	z-index:2;

	font-size:16px;
	line-height:1.8;

	color:#64748B;
}

/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1100px){

	.prr-photo-problems-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

}

/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:768px){

	.prr-photo-problems{
		padding:84px 0;
	}

	.prr-photo-problems-head{
		margin-bottom:46px;
	}

	.prr-photo-problems-subtitle{
		font-size:17px;
		line-height:1.7;
	}

	.prr-photo-problems-grid{
		grid-template-columns:1fr;
		gap:18px;
	}

	.prr-photo-problem-card{
		padding:28px 24px;
		border-radius:24px;
	}

	.prr-photo-problem-title{
		font-size:21px;
	}

	.prr-photo-problem-text{
		font-size:15px;
		line-height:1.7;
	}

}

/* =========================================================
   PHOTO FLOW
   ========================================================= */

.prr-photo-flow{
	position: relative;
	overflow: hidden;
	padding: 100px 35px;
	background:
		linear-gradient(
			180deg,
			#0B1220 0%,
			#111827 100%
		);
}

.prr-photo-flow-bg{
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at top left,
			rgba(90,80,200,0.16),
			transparent 34%
		),
		radial-gradient(
			circle at bottom right,
			rgba(47,125,107,0.12),
			transparent 34%
		);
	pointer-events: none;
}

.prr-photo-flow-glow{
	position: absolute;
	border-radius: 50%;
	filter: blur(120px);
	pointer-events: none;
}

.prr-photo-flow-glow-1{
	width: 460px;
	height: 460px;
	background: rgba(90,80,200,0.18);
	top: -180px;
	right: -120px;
}

.prr-photo-flow-glow-2{
	width: 360px;
	height: 360px;
	background: rgba(47,125,107,0.14);
	left: -120px;
	bottom: -140px;
}

.prr-photo-flow .container{
	position: relative;
	z-index: 2;
}

.prr-photo-flow-head{
	max-width: 860px;
	margin: 0 auto 74px;
	text-align: center;
}

.prr-photo-flow-label{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 18px;
	border-radius: 999px;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.08);
	backdrop-filter: blur(10px);

	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #CBD5F5;

	margin-bottom: 28px;
}

.prr-photo-flow-label i{
	width: 16px;
	height: 16px;
	color: #8B82F6;
}

.prr-photo-flow-title{
	margin: 0 0 24px;

	font-size: clamp(40px,5vw,68px);
	line-height: 1.02;
	letter-spacing: -0.05em;
	font-weight: 800;

	color: #FFFFFF;
}

.prr-photo-flow-subtitle{
	font-size: 20px;
	line-height: 1.8;
	color: #94A3B8;
}

.prr-photo-flow-line{
	position: absolute;
	left: 0;
	right: 0;
	top: 356px;
	height: 1px;

	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(139,130,246,0.34),
			transparent
		);

	z-index: 1;
}

.prr-photo-flow-grid{
	position: relative;
	z-index: 2;

	display: grid;
	grid-template-columns: repeat(5,minmax(0,1fr));
	gap: 22px;
}

.prr-photo-flow-card{
	position: relative;

	padding: 34px 28px;
	border-radius: 30px;

	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,0.05),
			rgba(255,255,255,0.03)
		);

	border: 1px solid rgba(255,255,255,0.08);

	backdrop-filter: blur(10px);

	min-height: 320px;

	transition:
		transform .35s ease,
		border-color .35s ease,
		box-shadow .35s ease;
}

.prr-photo-flow-card::before{
	content: "";
	position: absolute;
	inset: 0;

	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,0.14),
			transparent 60%
		);

	opacity: 0;
	transition: opacity .35s ease;
	pointer-events: none;
}

.prr-photo-flow-card:hover{
	transform: translateY(-8px);
	border-color: rgba(139,130,246,0.38);

	box-shadow:
		0 26px 60px rgba(0,0,0,0.34);
}

.prr-photo-flow-card:hover::before{
	opacity: 1;
}

.prr-photo-flow-card-accent{
	background:
		linear-gradient(
			135deg,
			rgba(90,80,200,0.22),
			rgba(47,125,107,0.16)
		);

	border-color: rgba(139,130,246,0.34);

	box-shadow:
		0 18px 40px rgba(90,80,200,0.14);
}

.prr-photo-flow-top{
	display: flex;
	align-items: center;
	justify-content: space-between;

	margin-bottom: 42px;
}

.prr-photo-flow-number{
	font-size: 24px;
	font-weight: 800;
	letter-spacing: .14em;
	color: #8B82F6;
}

.prr-photo-flow-icon{
	width: 66px;
	height: 66px;
	border-radius: 22px;

	display: flex;
	align-items: center;
	justify-content: center;

	background:
		linear-gradient(
			135deg,
			rgba(90,80,200,0.24),
			rgba(90,80,200,0.1)
		);

	border: 1px solid rgba(139,130,246,0.22);

	color: #C4B5FD;
}

.prr-photo-flow-card-accent .prr-photo-flow-icon{
	background:
		linear-gradient(
			135deg,
			rgba(47,125,107,0.28),
			rgba(47,125,107,0.12)
		);

	border-color: rgba(183,217,209,0.18);

	color: #9FE3D2;
}

.prr-photo-flow-icon i{
	width: 30px;
	height: 30px;
}

.prr-photo-flow-card-title{
	margin: 0 0 18px;

	font-size: 24px;
	line-height: 1.2;
	font-weight: 760;
	letter-spacing: -0.03em;

	color: #FFFFFF;
}

.prr-photo-flow-card-text{
	font-size: 16px;
	line-height: 1.8;
	color: #A8B3C7;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1180px){

	.prr-photo-flow-grid{
		grid-template-columns: repeat(2,minmax(0,1fr));
	}

	.prr-photo-flow-line{
		display: none;
	}

}

@media(max-width:768px){

	.prr-photo-flow{
		padding: 90px 12px;
	}

	.prr-photo-flow-head{
		margin-bottom: 48px;
	}

	.prr-photo-flow-subtitle{
		font-size: 18px;
		line-height: 1.7;
	}

	.prr-photo-flow-grid{
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.prr-photo-flow-card{
		min-height: auto;
		padding: 28px 24px;
		border-radius: 24px;
	}

	.prr-photo-flow-card-title{
		font-size: 22px;
	}

}

@media(max-width:540px){

	.prr-photo-flow-title{
		font-size: 34px;
	}

	.prr-photo-flow-subtitle{
		font-size: 16px;
	}

}

/* =========================================================
   PHOTO BENEFITS
   ========================================================= */

.prr-photo-benefits{
	position: relative;
	padding: 100px 35px;
	background: #FFFFFF;
	overflow: hidden;
}

.prr-photo-benefits::before{
	content: "";
	position: absolute;
	right: -180px;
	top: -180px;
	width: 520px;
	height: 520px;
	background:
		radial-gradient(
			circle,
			rgba(90,80,200,0.06) 0%,
			rgba(90,80,200,0) 72%
		);
	pointer-events: none;
}

.prr-photo-benefits-inner{
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1fr 520px;
	gap: 56px;
	align-items: center;
}

.prr-photo-benefits-label{
	display: inline-flex;
	align-items: center;
	padding: 10px 18px;
	border-radius: 999px;
	background: #EEF2FF;
	border: 1px solid #D6D2F3;
	color: #5A50C8;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	margin-bottom: 24px;
}

.prr-photo-benefits-title{
	margin: 0 0 24px;
	font-size: clamp(34px,4vw,54px);
	line-height: 1.05;
	letter-spacing: -0.04em;
	font-weight: 800;
	color: #0F172A;
	max-width: 720px;
}

.prr-photo-benefits-text{
	max-width: 760px;
	font-size: 18px;
	line-height: 1.9;
	color: #475569;
}

.prr-photo-benefits-right{
	position: relative;
}

.prr-photo-benefit-card{
	display: flex;
	gap: 18px;
	padding: 28px;
	border-radius: 26px;
	background: #FFFFFF;
	border: 1px solid #E2E8F0;
	box-shadow:
		0 12px 34px rgba(15,23,42,0.04);
}

.prr-photo-benefit-card-accent{
	background:
		linear-gradient(
			135deg,
			#F8FAFF 0%,
			#FFFFFF 100%
		);
	border-color: #D6D2F3;
	box-shadow:
		0 20px 50px rgba(90,80,200,0.08);
}

.prr-photo-benefit-icon{
	width: 58px;
	height: 58px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 18px;
	background: #EEF2FF;
	border: 1px solid #D6D2F3;
	color: #5A50C8;
}

.prr-photo-benefit-card-accent .prr-photo-benefit-icon{
	background: #E6F4F1;
	border-color: #B7D9D1;
	color: #2F7D6B;
}

.prr-photo-benefit-icon i{
	width: 26px;
	height: 26px;
}

.prr-photo-benefit-title{
	margin-bottom: 10px;
	font-size: 20px;
	line-height: 1.3;
	font-weight: 760;
	color: #0F172A;
}

.prr-photo-benefit-text{
	font-size: 15px;
	line-height: 1.75;
	color: #64748B;
}

.prr-photo-benefit-divider{
	width: 2px;
	height: 42px;
	margin: 12px auto;
	background:
		linear-gradient(
			180deg,
			transparent,
			#D6D2F3,
			transparent
		);
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:980px){

	.prr-photo-benefits-inner{
		grid-template-columns: 1fr;
	}

}

@media(max-width:768px){

	.prr-photo-benefits{
		padding: 74px 12px;
	}

	.prr-photo-benefits-title{
		font-size: 34px;
	}

	.prr-photo-benefits-text{
		font-size: 16px;
		line-height: 1.8;
	}

	.prr-photo-benefit-card{
		padding: 24px;
		border-radius: 22px;
	}

	.prr-photo-benefit-title{
		font-size: 18px;
	}

}

/* =========================================================
   PHOTO REASONS
   ========================================================= */

.prr-photo-reasons{
	position: relative;
	overflow: hidden;
	padding: 100px 35px;
	background:
		linear-gradient(
			180deg,
			#F8FAFC 0%,
			#FFFFFF 100%
		);
}

.prr-photo-reasons-bg{
	position: absolute;
	inset: 0;

	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,.06),
			transparent 32%
		),
		radial-gradient(
			circle at bottom left,
			rgba(47,125,107,.05),
			transparent 30%
		);

	pointer-events: none;
}

.prr-photo-reasons .container{
	position: relative;
	z-index: 2;
}

/* =========================================================
   HEAD
   ========================================================= */

.prr-photo-reasons-head{
	max-width: 820px;
	margin: 0 auto 64px;
	text-align: center;
}

.prr-photo-reasons-label,
.prr-photo-types-label{
	display: inline-flex;
	align-items: center;
	gap: 10px;

	padding: 10px 18px;

	border-radius: 999px;

	background: #EEF2FF;
	border: 1px solid #D6D2F3;

	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;

	color: #5A50C8;

	margin-bottom: 24px;
}

.prr-photo-reasons-label i,
.prr-photo-types-label i{
	width: 16px;
	height: 16px;
}

.prr-photo-reasons-title,
.prr-photo-types-title{
	margin: 0 0 22px;

	font-size: clamp(36px,5vw,60px);
	line-height: 1.03;
	letter-spacing: -0.04em;

	font-weight: 800;

	color: #0F172A;
}

.prr-photo-reasons-subtitle{
	font-size: 19px;
	line-height: 1.8;
	color: #64748B;
}

/* =========================================================
   REASONS GRID
   ========================================================= */

.prr-photo-reasons-grid{
	display: grid;
	grid-template-columns: repeat(4,minmax(0,1fr));
	gap: 22px;
}

.prr-photo-reasons-card{
	position: relative;

	padding: 32px 28px;

	background: #FFFFFF;

	border: 1px solid #E2E8F0;
	border-radius: 28px;

	overflow: hidden;

	transition:
		transform .28s ease,
		border-color .28s ease,
		box-shadow .28s ease;
}

.prr-photo-reasons-card::before{
	content: "";

	position: absolute;
	inset: 0;

	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,.08),
			transparent 58%
		);

	opacity: 0;

	transition: opacity .28s ease;
}

.prr-photo-reasons-card:hover{
	transform: translateY(-6px);

	border-color: #D6DBF5;

	box-shadow:
		0 22px 54px rgba(15,23,42,.06);
}

.prr-photo-reasons-card:hover::before{
	opacity: 1;
}

.prr-photo-reasons-icon{
	position: relative;
	z-index: 2;

	width: 62px;
	height: 62px;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 20px;

	background:
		linear-gradient(
			135deg,
			#EEF2FF,
			#F4F3FB
		);

	border: 1px solid #D6D2F3;

	color: #5A50C8;

	margin-bottom: 26px;
}

.prr-photo-reasons-icon i{
	width: 28px;
	height: 28px;
}

.prr-photo-reasons-card-title{
	position: relative;
	z-index: 2;

	margin: 0 0 14px;

	font-size: 24px;
	line-height: 1.2;
	font-weight: 760;
	letter-spacing: -0.03em;

	color: #0F172A;
}

.prr-photo-reasons-card-text{
	position: relative;
	z-index: 2;

	font-size: 16px;
	line-height: 1.75;

	color: #64748B;
}

/* =========================================================
   TYPES
   ========================================================= */

.prr-photo-types{
	margin-top: 110px;
}

.prr-photo-types-head{
	max-width: 760px;
	margin: 0 auto 48px;
	text-align: center;
}

.prr-photo-types-grid{
	display: grid;
	grid-template-columns: repeat(4,minmax(0,1fr));
	gap: 18px;
}

.prr-photo-type-item{
	display: flex;
	align-items: center;
	gap: 14px;

	min-height: 74px;

	padding: 18px 20px;

	background: #FFFFFF;

	border: 1px solid #E2E8F0;
	border-radius: 20px;

	font-size: 15px;
	line-height: 1.5;
	font-weight: 700;

	color: #334155;

	transition:
		transform .25s ease,
		border-color .25s ease,
		box-shadow .25s ease;
}

.prr-photo-type-item:hover{
	transform: translateY(-4px);

	border-color: #D6DBF5;

	box-shadow:
		0 16px 40px rgba(15,23,42,.05);
}

.prr-photo-type-item i{
	width: 20px;
	height: 20px;

	color: #5A50C8;

	flex-shrink: 0;
}

.prr-photo-type-item-accent{
	background:
		linear-gradient(
			135deg,
			#EEF2FF 0%,
			#F4F3FB 100%
		);

	border-color: #D6D2F3;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1180px){

	.prr-photo-reasons-grid{
		grid-template-columns: repeat(2,minmax(0,1fr));
	}

	.prr-photo-types-grid{
		grid-template-columns: repeat(3,minmax(0,1fr));
	}

}

@media(max-width:768px){

	.prr-photo-reasons{
		padding: 84px 12px;
	}

	.prr-photo-reasons-head{
		margin-bottom: 46px;
	}

	.prr-photo-reasons-subtitle{
		font-size: 17px;
		line-height: 1.7;
	}

	.prr-photo-reasons-grid{
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.prr-photo-reasons-card{
		padding: 28px 24px;
		border-radius: 24px;
	}

	.prr-photo-reasons-card-title{
		font-size: 22px;
	}

	.prr-photo-types{
		margin-top: 84px;
	}

	.prr-photo-types-grid{
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 14px;
	}

	.prr-photo-type-item{
		min-height: 68px;
		padding: 16px 18px;
		border-radius: 18px;
		font-size: 14px;
	}

}

@media(max-width:540px){

	.prr-photo-types-grid{
		grid-template-columns: 1fr;
	}

}

/* =========================================================
   PHOTO CASES
   ========================================================= */

.prr-photo-cases{
	position: relative;
	overflow: hidden;

	padding: 100px 35px;

	background:
		linear-gradient(
			180deg,
			#FFFFFF 0%,
			#F8FAFC 100%
		);
}

.prr-photo-cases-bg{
	position: absolute;
	inset: 0;

	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,.05),
			transparent 34%
		),
		radial-gradient(
			circle at bottom left,
			rgba(47,125,107,.04),
			transparent 32%
		);

	pointer-events: none;
}

.prr-photo-cases .container{
	position: relative;
	z-index: 2;
}

/* =========================================================
   HEAD
   ========================================================= */

.prr-photo-cases-head{
	max-width: 860px;
	margin: 0 auto 64px;
	text-align: center;
}

.prr-photo-cases-label{
	display: inline-flex;
	align-items: center;
	gap: 10px;

	padding: 10px 18px;

	border-radius: 999px;

	background: #EEF2FF;
	border: 1px solid #D6D2F3;

	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;

	color: #5A50C8;

	margin-bottom: 24px;
}

.prr-photo-cases-label i{
	width: 16px;
	height: 16px;
}

.prr-photo-cases-title{
	margin: 0 0 22px;

	font-size: clamp(36px,5vw,60px);
	line-height: 1.03;
	letter-spacing: -0.04em;

	font-weight: 800;

	color: #0F172A;
}

.prr-photo-cases-subtitle{
	font-size: 19px;
	line-height: 1.8;
	color: #64748B;
}

/* =========================================================
   LIST
   ========================================================= */

.prr-photo-cases-list{
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.prr-photo-case-row{
	position: relative;

	display: grid;
	grid-template-columns: 420px 1fr;
	gap: 34px;

	padding: 34px;

	background: rgba(255,255,255,.72);

	border: 1px solid #E2E8F0;
	border-radius: 32px;

	backdrop-filter: blur(12px);

	transition:
		transform .3s ease,
		border-color .3s ease,
		box-shadow .3s ease;
}

.prr-photo-case-row::before{
	content: "";

	position: absolute;
	inset: 0;

	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,.08),
			transparent 55%
		);

	opacity: 0;

	transition: opacity .3s ease;

	pointer-events: none;
}

.prr-photo-case-row:hover{
	transform: translateY(-6px);

	border-color: #D6DBF5;

	box-shadow:
		0 24px 60px rgba(15,23,42,.06);
}

.prr-photo-case-row:hover::before{
	opacity: 1;
}

/* =========================================================
   LEFT
   ========================================================= */

.prr-photo-case-side{
	display: flex;
	gap: 22px;
	align-items: flex-start;
}

.prr-photo-case-icon{
	width: 76px;
	height: 76px;

	flex-shrink: 0;

	display: flex;
	align-items: center;
	justify-content: center;

	border-radius: 24px;

	background:
		linear-gradient(
			135deg,
			#EEF2FF,
			#F4F3FB
		);

	border: 1px solid #D6D2F3;

	color: #5A50C8;
}

.prr-photo-case-icon i{
	width: 34px;
	height: 34px;
}

.prr-photo-case-meta{
	flex: 1;
	min-width: 0;
}

.prr-photo-case-badge{
	display: inline-flex;
	align-items: center;

	padding: 8px 14px;

	border-radius: 999px;

	background: #F8FAFC;
	border: 1px solid #E2E8F0;

	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;

	color: #64748B;

	margin-bottom: 18px;
}

.prr-photo-case-title{
	margin: 0;

	font-size: 30px;
	line-height: 1.14;
	letter-spacing: -0.03em;

	font-weight: 760;

	color: #0F172A;
}

/* =========================================================
   RIGHT
   ========================================================= */

.prr-photo-case-content{
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.prr-photo-case-text{
	font-size: 18px;
	line-height: 1.85;
	color: #475569;

	margin-bottom: 26px;

	max-width: 760px;
}

.prr-photo-case-result{
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.prr-photo-case-result-item{
	display: inline-flex;
	align-items: center;
	gap: 10px;

	min-height: 48px;

	padding: 0 16px;

	border-radius: 14px;

	background: #FFFFFF;
	border: 1px solid #E2E8F0;

	font-size: 14px;
	font-weight: 700;

	color: #334155;
}

.prr-photo-case-result-item i{
	width: 18px;
	height: 18px;

	color: #2F7D6B;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1100px){

	.prr-photo-case-row{
		grid-template-columns: 1fr;
		gap: 28px;
	}

}

@media(max-width:768px){

	.prr-photo-cases{
		padding: 84px 12px;
	}

	.prr-photo-cases-head{
		margin-bottom: 46px;
	}

	.prr-photo-cases-subtitle{
		font-size: 17px;
		line-height: 1.7;
	}

	.prr-photo-case-row{
		padding: 26px;
		border-radius: 26px;
	}

	.prr-photo-case-side{
		gap: 18px;
	}

	.prr-photo-case-icon{
		width: 64px;
		height: 64px;
		border-radius: 20px;
	}

	.prr-photo-case-icon i{
		width: 28px;
		height: 28px;
	}

	.prr-photo-case-title{
		font-size: 24px;
	}

	.prr-photo-case-text{
		font-size: 16px;
		line-height: 1.75;
		margin-bottom: 22px;
	}

}

@media(max-width:540px){

	.prr-photo-case-side{
		flex-direction: column;
	}

	.prr-photo-case-result{
		flex-direction: column;
	}

	.prr-photo-case-result-item{
		max-width: 100%;
	}

}

/* =========================================================
   PHOTO TRUST
   ========================================================= */

.prr-photo-trust{
	position: relative;
	overflow: hidden;
	padding: 100px 35px;
	background:
		linear-gradient(
			180deg,
			#0B1220 0%,
			#111827 100%
		);
}

.prr-photo-trust-bg{
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,0.16),
			transparent 34%
		),
		radial-gradient(
			circle at bottom left,
			rgba(47,125,107,0.12),
			transparent 34%
		);
	pointer-events: none;
}

.prr-photo-trust-glow{
	position: absolute;
	border-radius: 50%;
	filter: blur(100px);
	opacity: .5;
	pointer-events: none;
}

.prr-photo-trust-glow-1{
	width: 420px;
	height: 420px;
	background: rgba(90,80,200,0.14);
	top: -140px;
	right: -120px;
}

.prr-photo-trust-glow-2{
	width: 360px;
	height: 360px;
	background: rgba(47,125,107,0.12);
	left: -120px;
	bottom: -140px;
}

.prr-photo-trust-container{
	position: relative;
	z-index: 2;
	max-width: 1260px;
	margin: 0 auto;
}

.prr-photo-trust-head{
	max-width: 760px;
	margin: 0 auto 72px;
	text-align: center;
}

.prr-photo-trust-label{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 18px;
	border-radius: 999px;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.08);
	backdrop-filter: blur(10px);
	color: #C7D2FE;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	margin-bottom: 24px;
}

.prr-photo-trust-title{
	margin: 0 0 24px;
	font-size: clamp(38px,5vw,64px);
	line-height: 1.04;
	letter-spacing: -0.04em;
	font-weight: 800;
	color: #FFFFFF;
}

.prr-photo-trust-subtitle{
	font-size: 19px;
	line-height: 1.8;
	color: #94A3B8;
}

.prr-photo-trust-layout{
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 26px;
	align-items: stretch;
}

/* =========================================================
   LEFT
   ========================================================= */

.prr-photo-trust-main{
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.prr-photo-trust-main-card{
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 26px;
	padding: 36px;
	border-radius: 32px;
	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,0.07),
			rgba(255,255,255,0.04)
		);
	border: 1px solid rgba(255,255,255,0.08);
	backdrop-filter: blur(10px);
	overflow: hidden;
	transition:
		transform .35s ease,
		border-color .35s ease,
		box-shadow .35s ease;
}

.prr-photo-trust-main-card::before{
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,0.18),
			transparent 55%
		);
	opacity: 0;
	transition: opacity .35s ease;
}

.prr-photo-trust-main-card:hover{
	transform: translateY(-6px);
	border-color: rgba(139,130,246,0.34);
	box-shadow:
		0 24px 60px rgba(0,0,0,0.28);
}

.prr-photo-trust-main-card:hover::before{
	opacity: 1;
}

.prr-photo-trust-main-icon{
	position: relative;
	z-index: 2;
	width: 72px;
	height: 72px;
	border-radius: 22px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background:
		linear-gradient(
			135deg,
			rgba(90,80,200,0.26),
			rgba(90,80,200,0.10)
		);
	border: 1px solid rgba(139,130,246,0.22);
	color: #C4B5FD;
}

.prr-photo-trust-main-icon svg{
	width: 32px;
	height: 32px;
	stroke-width: 2;
}

.prr-photo-trust-main-title{
	position: relative;
	z-index: 2;
	margin-bottom: 14px;
	font-size: 30px;
	line-height: 1.15;
	font-weight: 800;
	letter-spacing: -0.03em;
	color: #FFFFFF;
}

.prr-photo-trust-main-text{
	position: relative;
	z-index: 2;
	font-size: 17px;
	line-height: 1.9;
	color: #CBD5E1;
	max-width: 90%;
}

/* =========================================================
   RIGHT
   ========================================================= */

.prr-photo-trust-side{
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.prr-photo-trust-item{
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 24px 26px;
	border-radius: 24px;
	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,0.06),
			rgba(255,255,255,0.03)
		);
	border: 1px solid rgba(255,255,255,0.08);
	backdrop-filter: blur(10px);
	transition:
		transform .3s ease,
		border-color .3s ease,
		background .3s ease;
}

.prr-photo-trust-item:hover{
	transform: translateX(6px);
	border-color: rgba(139,130,246,0.30);
	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,0.08),
			rgba(255,255,255,0.04)
		);
}

.prr-photo-trust-item-icon{
	width: 54px;
	height: 54px;
	border-radius: 18px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background:
		linear-gradient(
			135deg,
			rgba(47,125,107,0.24),
			rgba(47,125,107,0.10)
		);
	border: 1px solid rgba(183,217,209,0.16);
	color: #9FE3D2;
}

.prr-photo-trust-item-icon svg{
	width: 24px;
	height: 24px;
	stroke-width: 2;
}

.prr-photo-trust-item-text{
	font-size: 17px;
	line-height: 1.6;
	font-weight: 650;
	color: #E2E8F0;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:980px){

	.prr-photo-trust-layout{
		grid-template-columns: 1fr;
	}

}

@media(max-width:768px){

	.prr-photo-trust{
		padding: 90px 20px;
	}

	.prr-photo-trust-head{
		margin-bottom: 48px;
	}

	.prr-photo-trust-main-card{
		padding: 28px;
		border-radius: 26px;
		flex-direction: column;
	}

	.prr-photo-trust-main-title{
		font-size: 24px;
	}

	.prr-photo-trust-main-text{
		max-width: 100%;
		font-size: 16px;
		line-height: 1.8;
	}

	.prr-photo-trust-item{
		padding: 20px;
		border-radius: 20px;
	}

	.prr-photo-trust-item-text{
		font-size: 15px;
		line-height: 1.6;
	}

	.prr-photo-trust-subtitle{
		font-size: 17px;
		line-height: 1.7;
	}

}

/* =========================================================
   PHOTO SEO
   ========================================================= */

.prr-photo-seo{
	position: relative;
	padding: 100px 35px;
	background:
		linear-gradient(
			180deg,
			#F8FAFC 0%,
			#FFFFFF 100%
		);
	overflow: hidden;
}

.prr-photo-seo-glow{
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	filter: blur(90px);
}

.prr-photo-seo-glow-1{
	width: 420px;
	height: 420px;
	right: -140px;
	top: -140px;
	background: rgba(90,80,200,0.10);
}

.prr-photo-seo-glow-2{
	width: 360px;
	height: 360px;
	left: -120px;
	bottom: -120px;
	background: rgba(47,125,107,0.08);
}

.prr-photo-seo-container{
	position: relative;
	z-index: 2;
	max-width: 1280px;
	margin: 0 auto;
}

.prr-photo-seo-head{
	max-width: 760px;
	margin-bottom: 64px;
}

.prr-photo-seo-label{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 18px;
	border-radius: 999px;
	background: #EEF2FF;
	border: 1px solid #D6D2F3;
	color: #5A50C8;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	margin-bottom: 24px;
}

.prr-photo-seo-label i{
	width: 16px;
	height: 16px;
}

.prr-photo-seo-title{
	margin: 0;
	font-size: clamp(38px,5vw,64px);
	line-height: 1.04;
	letter-spacing: -0.04em;
	font-weight: 800;
	color: #0F172A;
}

.prr-photo-seo-layout{
	display: grid;
	grid-template-columns: minmax(0,1fr) 340px;
	gap: 40px;
	align-items: start;
}

.prr-photo-seo-content{
	padding: 46px;
	border-radius: 34px;
	background: rgba(255,255,255,0.82);
	border: 1px solid rgba(226,232,240,0.9);
	box-shadow:
		0 24px 70px rgba(15,23,42,0.05);
	backdrop-filter: blur(14px);
}

.prr-photo-seo-content p{
	margin: 0 0 28px;
	font-size: 17px;
	line-height: 1.95;
	color: #334155;
}

.prr-photo-seo-content p:last-child{
	margin-bottom: 0;
}

.prr-photo-seo-side{
	position: sticky;
	top: 120px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.prr-photo-seo-note{
	padding: 30px;
	border-radius: 28px;
	background:
		linear-gradient(
			135deg,
			#0F172A 0%,
			#1E293B 100%
		);
	color: #FFFFFF;
	box-shadow:
		0 24px 60px rgba(15,23,42,0.18);
}

.prr-photo-seo-note-icon{
	width: 62px;
	height: 62px;
	border-radius: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	background:
		linear-gradient(
			135deg,
			rgba(90,80,200,0.28),
			rgba(47,125,107,0.20)
		);
	border: 1px solid rgba(255,255,255,0.10);
	margin-bottom: 24px;
	color: #C4B5FD;
}

.prr-photo-seo-note-icon i{
	width: 28px;
	height: 28px;
}

.prr-photo-seo-note-title{
	font-size: 24px;
	line-height: 1.2;
	font-weight: 800;
	letter-spacing: -0.03em;
	margin-bottom: 14px;
}

.prr-photo-seo-note-text{
	font-size: 15px;
	line-height: 1.8;
	color: #CBD5E1;
}

.prr-photo-seo-points{
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.prr-photo-seo-point{
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 18px 20px;
	border-radius: 20px;
	background: rgba(255,255,255,0.82);
	border: 1px solid #E2E8F0;
	box-shadow:
		0 10px 30px rgba(15,23,42,0.04);
	font-size: 15px;
	font-weight: 600;
	color: #334155;
}

.prr-photo-seo-point i{
	width: 18px;
	height: 18px;
	color: #5A50C8;
	flex-shrink: 0;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:980px){

	.prr-photo-seo-layout{
		grid-template-columns: 1fr;
	}

	.prr-photo-seo-side{
		position: relative;
		top: auto;
	}

}

@media(max-width:768px){

	.prr-photo-seo{
		padding: 84px 18px;
	}

	.prr-photo-seo-head{
		margin-bottom: 42px;
	}

	.prr-photo-seo-content{
		padding: 30px 24px;
		border-radius: 26px;
	}

	.prr-photo-seo-content p{
		font-size: 16px;
		line-height: 1.85;
		margin-bottom: 24px;
	}

	.prr-photo-seo-note{
		padding: 26px 22px;
		border-radius: 24px;
	}

	.prr-photo-seo-note-title{
		font-size: 22px;
	}

}

/* =========================================================
   PHOTO FAQ
   ========================================================= */

.prr-photo-faq{
	position: relative;
	padding: 100px 35px;
	background:
		linear-gradient(
			180deg,
			#F8FAFC 0%,
			#EEF2F7 100%
		);
	overflow: hidden;
}

.prr-photo-faq-bg{
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,0.08),
			transparent 36%
		),
		radial-gradient(
			circle at bottom left,
			rgba(47,125,107,0.06),
			transparent 34%
		);
	pointer-events: none;
}

.prr-photo-faq-glow{
	position: absolute;
	border-radius: 50%;
	filter: blur(90px);
	pointer-events: none;
}

.prr-photo-faq-glow-1{
	width: 420px;
	height: 420px;
	top: -160px;
	right: -140px;
	background: rgba(90,80,200,0.10);
}

.prr-photo-faq-glow-2{
	width: 360px;
	height: 360px;
	left: -120px;
	bottom: -120px;
	background: rgba(47,125,107,0.08);
}

.prr-photo-faq-container{
	position: relative;
	z-index: 2;
	max-width: 1100px;
	margin: 0 auto;
}

.prr-photo-faq-head{
	max-width: 760px;
	margin: 0 auto 58px;
	text-align: center;
}

.prr-photo-faq-label{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 18px;
	border-radius: 999px;
	background: #EEF2FF;
	border: 1px solid #D6D2F3;
	color: #5A50C8;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	margin-bottom: 24px;
}

.prr-photo-faq-label i{
	width: 16px;
	height: 16px;
}

.prr-photo-faq-title{
	margin: 0 0 22px;
	font-size: clamp(38px,5vw,62px);
	line-height: 1.05;
	letter-spacing: -0.04em;
	font-weight: 800;
	color: #0F172A;
}

.prr-photo-faq-subtitle{
	font-size: 19px;
	line-height: 1.8;
	color: #64748B;
}

.prr-photo-faq-list{
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.prr-photo-faq-item{
	position: relative;
	border-radius: 28px;
	background: rgba(255,255,255,0.82);
	border: 1px solid rgba(226,232,240,0.9);
	backdrop-filter: blur(12px);
	box-shadow:
		0 12px 40px rgba(15,23,42,0.04);
	overflow: hidden;
	transition:
		transform .3s ease,
		border-color .3s ease,
		box-shadow .3s ease;
}

.prr-photo-faq-item:hover{
	transform: translateY(-3px);
	border-color: #D6DBF5;
	box-shadow:
		0 20px 60px rgba(15,23,42,0.06);
}

.prr-photo-faq-item.active{
	border-color: #D6D2F3;
	box-shadow:
		0 24px 70px rgba(90,80,200,0.08);
}

.prr-photo-faq-question{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 30px 32px;
	background: transparent;
	border: none;
	cursor: pointer;
	text-align: left;
}

.prr-photo-faq-question span{
	font-size: 21px;
	line-height: 1.45;
	font-weight: 760;
	letter-spacing: -0.02em;
	color: #0F172A;
}

.prr-photo-faq-icon{
	width: 48px;
	height: 48px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px;
	background: #F4F3FB;
	border: 1px solid #D6D2F3;
	color: #5A50C8;
	transition:
		transform .25s ease,
		background .25s ease;
	margin-right: 5%;	
}

.prr-photo-faq-icon svg{
	width: 22px;
	height: 22px;
	stroke-width: 2.2;
}

.prr-photo-faq-item.active .prr-photo-faq-icon{
	transform: rotate(45deg);
	background: #EEF2FF;
}

.prr-photo-faq-answer{
	max-height: 0;
	overflow: hidden;
	padding: 0 32px;
	font-size: 17px;
	line-height: 1.9;
	color: #475569;
	transition:
		max-height .35s ease,
		padding .35s ease;
}

.prr-photo-faq-item.active .prr-photo-faq-answer{
	max-height: 400px;
	padding: 0 32px 32px;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:768px){

	.prr-photo-faq{
		padding: 84px 18px;
	}

	.prr-photo-faq-head{
		margin-bottom: 42px;
	}

	.prr-photo-faq-question{
		padding: 24px 22px;
	}

	.prr-photo-faq-question span{
		font-size: 17px;
		line-height: 1.5;
	}

	.prr-photo-faq-answer{
		padding: 0 22px;
		font-size: 15px;
		line-height: 1.8;
	}

	.prr-photo-faq-item.active .prr-photo-faq-answer{
		padding: 0 22px 24px;
	}

	.prr-photo-faq-icon{
		width: 42px;
		height: 42px;
		border-radius: 14px;
		margin-right: 10%;
	}

	.prr-photo-faq-subtitle{
		font-size: 17px;
		line-height: 1.7;
	}

}

/* =========================================================
   FINAL CTA
   ========================================================= */

.prr-photo-final{
	position: relative;
	overflow: hidden;
	padding: 100px 35px;
	background:
		linear-gradient(
			135deg,
			#0B1220 0%,
			#121A2B 45%,
			#172033 100%
		);
}

.prr-photo-final-bg{
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at top right,
			rgba(90,80,200,0.18),
			transparent 40%
		),
		radial-gradient(
			circle at bottom left,
			rgba(47,125,107,0.12),
			transparent 35%
		);
	pointer-events: none;
}

.prr-photo-final-glow{
	position: absolute;
	border-radius: 50%;
	filter: blur(110px);
	pointer-events: none;
	opacity: .5;
}

.prr-photo-final-glow-1{
	width: 420px;
	height: 420px;
	background: rgba(90,80,200,0.22);
	top: -160px;
	right: -120px;
}

.prr-photo-final-glow-2{
	width: 340px;
	height: 340px;
	background: rgba(47,125,107,0.16);
	left: -120px;
	bottom: -120px;
}

.prr-photo-final-inner{
	position: relative;
	z-index: 2;
	max-width: 960px;
	margin: 0 auto;
	text-align: center;
}

.prr-photo-final-badge{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 11px 18px;
	border-radius: 999px;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.10);
	backdrop-filter: blur(10px);
	font-size: 14px;
	font-weight: 700;
	color: #CBD5F5;
	margin-bottom: 30px;
}

.prr-photo-final-badge i{
	width: 18px;
	height: 18px;
	color: #9FE3D2;
}

.prr-photo-final-title{
	margin: 0;
	font-size: clamp(42px,6vw,72px);
	line-height: 1.02;
	letter-spacing: -0.05em;
	font-weight: 800;
	color: #FFFFFF;
}

.prr-photo-final-text{
	max-width: 760px;
	margin: 30px auto 0;
	font-size: 21px;
	line-height: 1.8;
	color: #CBD5E1;
}

.prr-photo-final-actions{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 18px;
	margin-top: 52px;
}

.prr-photo-final-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-height: 62px;
	padding: 0 30px;
	border-radius: 18px;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	transition:
		transform .25s ease,
		background .25s ease,
		border-color .25s ease,
		box-shadow .25s ease;
}

.prr-photo-final-btn i{
	width: 20px;
	height: 20px;
}

.prr-photo-final-btn-primary{
	background: #2F7D6B;
	color: #FFFFFF;
	box-shadow:
		0 22px 50px rgba(47,125,107,0.28);
}

.prr-photo-final-btn-primary:hover{
	background: #276B5C;
	transform: translateY(-3px);
}

.prr-photo-final-btn-secondary{
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.12);
	color: #FFFFFF;
	backdrop-filter: blur(10px);
}

.prr-photo-final-btn-secondary:hover{
	background: rgba(255,255,255,0.10);
	border-color: rgba(255,255,255,0.18);
	transform: translateY(-3px);
}

.prr-photo-final-points{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 54px;
}

.prr-photo-final-point{
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 18px;
	border-radius: 14px;
	background: rgba(255,255,255,0.05);
	border: 1px solid rgba(255,255,255,0.08);
	backdrop-filter: blur(10px);
	font-size: 14px;
	font-weight: 600;
	color: #CBD5E1;
}

.prr-photo-final-point i{
	width: 18px;
	height: 18px;
	color: #2F7D6B;
	flex-shrink: 0;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:768px){

	.prr-photo-final{
		padding: 90px 20px;
	}

	.prr-photo-final-title{
		font-size: 38px;
		line-height: 1.08;
	}

	.prr-photo-final-text{
		font-size: 17px;
		line-height: 1.75;
	}

	.prr-photo-final-actions{
		flex-direction: column;
	}

	.prr-photo-final-btn{
		max-width: 100%;
	}

	.prr-photo-final-points{
		flex-direction: column;
		align-items: stretch;
	}

	.prr-photo-final-point{
		justify-content: center;
	}

}

/* =========================================================
   LINKS
   ========================================================= */

.prr-photo-links{
	position: relative;
	padding: 42px 35px 0;
	margin-top: 90px;
	border-top: 1px solid rgba(255,255,255,0.08);
}

.prr-photo-links-inner{
	position: relative;
	z-index: 2;
}

.prr-photo-links-title{
	margin-bottom: 28px;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #94A3B8;
}

.prr-photo-links-grid{
	display: grid;
	grid-template-columns: repeat(5,minmax(0,1fr));
	gap: 16px;
}

.prr-photo-link-card{
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 18px;
	border-radius: 18px;
	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,0.06),
			rgba(255,255,255,0.03)
		);
	border: 1px solid rgba(255,255,255,0.08);
	text-decoration: none;
	transition:
		transform .25s ease,
		border-color .25s ease,
		background .25s ease,
		box-shadow .25s ease;
}

.prr-photo-link-card:hover{
	transform: translateY(-4px);
	border-color: rgba(90,80,200,0.35);
	background:
		linear-gradient(
			180deg,
			rgba(255,255,255,0.09),
			rgba(255,255,255,0.05)
		);
	box-shadow:
		0 20px 40px rgba(0,0,0,0.18);
}

.prr-photo-link-icon{
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	background: #E2E8F0;
	flex-shrink: 0;
}

.prr-photo-link-icon svg.lucide {
    color: #334155;
}


.prr-photo-link-icon i{
	width: 20px;
	height: 20px;
	color: #334155 !important;
}

.prr-photo-link-content{
	min-width: 0;
}

.prr-photo-link-name{
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	color: #0F172A;
}

.prr-photo-link-text{
	margin-top: 6px;
	font-size: 13px;
	line-height: 1.55;
	color: #94A3B8;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1100px){

	.prr-photo-links-grid{
		grid-template-columns: repeat(2,minmax(0,1fr));
	}

}

@media(max-width:640px){

	.prr-photo-links{
		margin-top: 56px;
		margin-bottom:56px;
	}

	.prr-photo-links-grid{
		grid-template-columns: 1fr;
	}

	.prr-photo-link-card{
		padding: 16px;
	}

}