/* About Page Dedicated Styles */
body.about-page {background:#f5f8fc; color:#243044; font-family:IRANSans,'IRANSansWeb',sans-serif;}
.about-hero {position:relative; padding:150px 0 130px; text-align:center; background:radial-gradient(circle at 30% 30%,#2d61e9 0%,#1d3f72 70%); color:#fff; overflow:hidden;}
.about-hero:before,.about-hero:after{content:""; position:absolute; border-radius:50%; background:rgba(255,255,255,0.08); filter:blur(2px);} 
.about-hero:before{width:480px; height:480px; top:-120px; right:-160px;} 
.about-hero:after{width:560px; height:560px; bottom:-180px; left:-200px;}
.about-hero h1 {font-size:50px; margin:0 0 25px; font-weight:700; letter-spacing:.5px;}
.about-hero p.lead {font-size:19px; max-width:860px; margin:0 auto; line-height:1.9; color:#f0f5ff;}
.section {padding:80px 0; position:relative;}
.section-narrow {padding:60px 0 50px;}
.section h2 {font-size:34px; font-weight:700; margin:0 0 30px; color:#1e3354; letter-spacing:.3px; position:relative;}
.section h2 span.accent {background:linear-gradient(90deg,#2d61e9,#1d3f72); -webkit-background-clip:text; background-clip:text; color:transparent;}
.section p {line-height:1.85; font-size:15.5px;}
.split-2 {display:grid; gap:45px; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); align-items:start;}
.value-cards {display:grid; gap:26px; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); margin-top:30px;}
.value-card {background:#fff; border-radius:20px; padding:26px 22px 24px; position:relative; box-shadow:0 10px 34px -14px rgba(25,55,115,.25); overflow:hidden; transition:.35s;}
.value-card:before{content:""; position:absolute; inset:0; background:linear-gradient(140deg,rgba(45,97,233,0.08),rgba(29,63,114,0.08)); opacity:0; transition:.4s;}
.value-card:hover {transform:translateY(-6px); box-shadow:0 18px 46px -16px rgba(25,55,115,.35);} 
.value-card:hover:before{opacity:1;}
.value-icon {width:54px; height:54px; border-radius:14px; background:linear-gradient(145deg,#2d61e9,#1d3f72); display:flex; align-items:center; justify-content:center; color:#fff; font-size:22px; margin-bottom:14px; box-shadow:0 8px 26px -10px rgba(0,0,0,.35);}
.value-card h3 {margin:0 0 10px; font-size:17px; font-weight:700; color:#1d3f72;}
.value-card p {margin:0; font-size:13.5px; line-height:1.7; color:#3a4d63;}
.approach-steps {display:grid; gap:28px; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); margin-top:34px;}
.step {background:#fff; border-radius:18px; padding:24px 22px 26px; box-shadow:0 10px 32px -14px rgba(23,52,105,.25); position:relative; overflow:hidden;}
.step:after{content:""; position:absolute; inset:0; background:linear-gradient(120deg,rgba(45,97,233,.07),rgba(29,63,114,.07)); opacity:0; transition:.35s;}
.step:hover:after{opacity:1;}
.step h4 {margin:0 0 10px; font-size:15px; font-weight:700; color:#1d3f72; letter-spacing:.2px;}
.metrics-bar {display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:20px; margin-top:32px;}
.metric {background:#ffffff; border-radius:18px; padding:20px 18px 22px; text-align:center; box-shadow:0 10px 30px -14px rgba(20,58,120,.18);}
.metric h5 {margin:0 0 6px; font-size:16px; color:#1d3f72; font-weight:700;}
.metric span {display:block; font-size:13px; color:#5a6d83;}
.highlight-box {background:linear-gradient(135deg,#2d61e9,#1d3f72); color:#fff; padding:40px 34px; border-radius:26px; box-shadow:0 14px 48px -16px rgba(0,50,130,.5); text-align:center; margin-top:60px;}
.highlight-box h3 {margin:0 0 14px; font-size:26px; font-weight:700;}
.highlight-box p {margin:0 0 22px; font-size:15px; line-height:1.9; color:#e8f1ff;}
.cta-btn {background:#fff; color:#1d3f72; padding:14px 26px; border-radius:16px; font-weight:600; text-decoration:none; display:inline-block; box-shadow:0 8px 26px -10px rgba(0,0,0,.25); transition:.35s;}
.cta-btn:hover {transform:translateY(-4px); box-shadow:0 16px 40px -14px rgba(0,0,0,.3);}
.separator {height:1px; background:linear-gradient(90deg,rgba(45,97,233,.4),rgba(29,63,114,.15)); margin:70px 0 40px;}
.footer-space {padding-bottom:40px;}
@media (max-width:880px){ .about-hero h1 {font-size:40px;} }
@media (max-width:600px){ .about-hero {padding:120px 0 110px;} .about-hero h1 {font-size:34px;} }

/* Mobile Text Justification and Layout Fixes */
@media (max-width: 768px) {
	/* Force text justification for all paragraphs */
	p, .lead {
		text-align: justify !important;
		line-height: 1.8 !important;
		margin-bottom: 20px !important;
		font-size: 15px !important;
		word-spacing: 0.1em !important;
	}
	
	/* Hero section mobile fixes */
	.about-hero h1 {
		text-align: center !important;
		font-size: 24px !important;
		line-height: 1.4 !important;
		margin-bottom: 20px !important;
		padding: 0 15px !important;
	}
	
	.about-hero .lead {
		text-align: justify !important;
		font-size: 16px !important;
		line-height: 1.7 !important;
		padding: 0 15px !important;
		margin-bottom: 25px !important;
	}
	
	/* Section content */
	.section h2 {
		text-align: center !important;
		font-size: 22px !important;
		line-height: 1.4 !important;
		margin-bottom: 20px !important;
	}
	
	.section .accent {
		display: block !important;
		text-align: center !important;
	}
	
	/* Split content mobile layout */
	.split-2 > div {
		margin-bottom: 30px !important;
	}
	
	.split-2 p {
		text-align: justify !important;
		line-height: 1.8 !important;
		margin-bottom: 18px !important;
		font-size: 15px !important;
	}
	
	/* Value cards mobile */
	.value-cards {
		display: block !important;
	}
	
	.value-card {
		margin-bottom: 20px !important;
		padding: 20px 15px !important;
		text-align: center !important;
	}
	
	.value-card h3 {
		font-size: 18px !important;
		margin: 15px 0 10px 0 !important;
		text-align: center !important;
	}
	
	.value-card p {
		text-align: center !important;
		font-size: 14px !important;
		line-height: 1.6 !important;
		margin: 0 !important;
	}
	
	/* Approach steps */
	.approach-steps {
		display: block !important;
	}
	
	.step {
		margin-bottom: 25px !important;
		padding: 15px !important;
		text-align: center !important;
	}
	
	.step h4 {
		font-size: 16px !important;
		margin-bottom: 10px !important;
		text-align: center !important;
	}
	
	.step p {
		text-align: center !important;
		font-size: 14px !important;
		line-height: 1.6 !important;
	}
	
	/* Metrics bar mobile */
	.metrics-bar {
		display: block !important;
		text-align: center !important;
	}
	
	.metric {
		margin-bottom: 20px !important;
		padding: 15px !important;
		text-align: center !important;
	}
	
	.metric h5 {
		font-size: 24px !important;
		margin-bottom: 5px !important;
	}
	
	.metric span {
		font-size: 14px !important;
		display: block !important;
	}
	
	/* Highlight box mobile */
	.highlight-box {
		padding: 25px 20px !important;
		margin: 0 15px !important;
	}
	
	.highlight-box h3 {
		font-size: 20px !important;
		line-height: 1.4 !important;
		text-align: center !important;
		margin-bottom: 15px !important;
	}
	
	.highlight-box p {
		text-align: justify !important;
		font-size: 15px !important;
		line-height: 1.7 !important;
		margin-bottom: 20px !important;
	}
	
	/* CTA button */
	.cta-btn {
		display: block !important;
		width: 100% !important;
		text-align: center !important;
		padding: 15px !important;
		font-size: 16px !important;
		border-radius: 8px !important;
	}
	
	/* Container padding */
	.container {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
	
	/* Section padding */
	.section {
		padding: 40px 0 !important;
	}
	
	.section-narrow {
		padding: 30px 0 !important;
	}
	
	/* Footer mobile fixes */
	footer .footer-section h3,
	footer .footer-section h4 {
		text-align: center !important;
		font-size: 18px !important;
		margin-bottom: 15px !important;
	}
	
	footer .footer-section p {
		text-align: justify !important;
		font-size: 14px !important;
		line-height: 1.6 !important;
	}
	
	footer .footer-section ul {
		text-align: center !important;
	}
	
	footer .social-links {
		text-align: center !important;
	}
	
	/* Ensure RTL direction */
	body, html {
		direction: rtl !important;
	}
	
	/* Force justify on all text elements */
	div, span, strong {
		text-align: inherit !important;
	}
}
