/*
 Theme Name:   AMR Child Theme
 Theme URI:    http://www.amrsoftec.com
 Description:  Hello Elementor Child Theme - A plain-vanilla & lightweight theme for Elementor page builder
 Author:       AMR Softec
 Author URI:   http://www.amrsoftec.com
 Template:     hello-elementor
 Version:      1.0.0
 License:      GNU General Public License v3 or later.
 License URI:  https://www.gnu.org/licenses/gpl-3.0.html
 Tags:         flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready
 Text Domain:  hello-elementor-child
*/
/* ADD YOUR CUSTOM CSS BELOW */

/* Slider CSS (keeps look similar to your original styles) */
 .raven-rightSliderBox{
     background:#f6f2ff;
     padding:20px;
     border-radius:20px;
     max-width:100%;
     margin:0 auto;
}
 .raven-scheduleText{
     font-size:13px;
     color:#555;
     font-family:monospace;
     margin-bottom:12px;
}
 .raven-dot{
     width:10px;
     height:10px;
     background:#000;
     border-radius:50%;
     display:inline-block;
     margin-right:8px;
}
/* slick container */
 .raven-slick-wrap{
     overflow:hidden;
}
 .raven-home-slider{
     display:block;
	  background-color: #E9E1F9;
    padding: 20px;
    border-radius: 10px;
}
 .raven-slide{
     padding:6px 0;
     display:flex;
     justify-content:center;
}
 .raven-card{
     background:#fff;
     padding:10px 14px;
     border-radius:10px;
     display:flex;
     align-items:center;
     gap:10px;
     box-shadow:0 2px 6px rgba(0,0,0,0.05);
     min-width:300px;
}
 .raven-icon{
     background:#F0F5FA;
     padding:8px;
     border-radius:10px;
     width:40px;
     height:40px;
     object-fit:contain;
}
/* slick custom visual: slightly faded non-center */
 .raven-home-slider .slick-slide {
     opacity: 0.4;
     transform: scale(0.9);
     transition: all .3s ease;
     display:flex;
     justify-content:center;
}
 .raven-home-slider .slick-center {
     opacity: 1;
     transform: scale(1.05);
     z-index:10;
}
 .raven-navButtons{
     display:flex;
     justify-content:center;
     gap:12px;
     margin-top:14px;
}
 .raven-navButtonDown, .raven-navButtonUp{
     background:#5c44bf;
     color:#fff;
     border:none;
     padding:6px 12px;
     border-radius:6px;
     cursor:pointer;
     font-size:20px;
     transition:background .25s;
	 display: flex;
     align-items: center;
}
 .raven-navButtonDown:hover, .raven-navButtonUp:hover{
     background:#3a2899 !important;
}
.raven-navButtons svg{
	width:25px;
	height:25px;
	fill:#fff;
}
/* responsive */
 @media (max-width:768px){
     .raven-rightSliderBox{
         padding:12px;
         max-width:100%;
    }
     .raven-card{
         min-width:auto;
         width:92%;
    }
}
.p-logo-list {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .16);
    border: 1px solid rgba(116, 116, 116, .293);
    transition: transform .3s ease, border .3s ease, background-color .3s ease;
    background-color: white;
    overflow: visible;
    will-change: transform;
}
.p-logo-list:hover{
	transform: scale(1.1);
	border: 1px solid #4a00e1;
	background-color: #c7d4ff18;
}
.p-logo-list .elementor-widget-image {
    display: flex;
    align-items: center;
    justify-content: center;
}
.p-logo-list .elementor-widget-image img {
    max-width: 90%;
    max-height: 90%;
    height: auto;
    width: auto;
    object-fit: contain;
}
.c-icon-with-content {
    position: relative;
    display: flex;
    flex-direction: column;
/*     align-items: flex-start; */
    gap: 1rem;
    padding: 1rem;
    border-radius: 0.5rem;
    background-color: #fff;
    overflow: hidden;
    box-shadow: 0 1px 3px rgb(0 0 0 / 27%), 0 1px 2px rgba(0, 0, 0, 0.06);
    align-items: center;
}
.raven-navButtons button {
    padding: 10px 15px;
}
.c-icon-with-content svg {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle, rgba(255, 255, 255, 0) 0%, rgba(133, 186, 255, 0.49) 100%);
    border-radius: .5rem;
    padding: 16px;
}
.thomas span.elementor-icon {
    background: transparent !important;
}
/* services */
 :root {
     --amr-accent: #4a00e1;
}
 .refServicessec{
     padding: 70px 0;
	 font-family:"Poppins", Sans-serif;
}
 .amr-container{
     max-width:1100px;
     margin: 0 auto;
     padding: 0 16px;
}
 .intro {
     text-align: center;
     margin-bottom: 32px;
}
 .section-title {
     font-size: 28px;
     margin: 0 0 8px;
}
 .lead {
     color: #444;
     font-size: 16px;
     margin: 0;
}
 .servicesMaindiv {
     display: flex;
     flex-direction: column;
     gap: 2rem;
     border-radius: 12px;
     margin: 0 auto;
}
 @media (min-width: 768px) {
     .servicesMaindiv {
         flex-direction: row;
    }
}
 .leftPanel {
     flex: 1;
     display: flex;
     flex-direction: column;
     background: #fff;
     border-radius: 10px;
     overflow: hidden;
     min-height: 600px;
}
 .stepItem {
     cursor: pointer;
     padding: 1rem;
     border-radius: 8px;
     transition: all 0.3s ease;
     position: relative;
     overflow: visible;
     border: 1px solid transparent;
     opacity: 0.6;
}
 .stepItem:hover {
     opacity: 1;
}
 .stepItem.active {
     opacity: 1;
}
 .stepHeader {
     display:flex;
     align-items:center;
     gap:1rem;
     margin-bottom:0.5rem;
}
 .icon {
     width:50px;
     height:50px;
     display:flex;
     align-items:center;
     justify-content:center;
     background:#f0e8ff;
     border-radius:10px;
}
 .icon img{
     width:24px;
     height:24px;
     display:block;
}
 .heading {
     font-size:18px;
     font-weight:600;
     color:#333;
     margin:0;
}
 .stepItem.active .heading {
     color: var(--amr-accent);
}
 .description {
     font-size:0.95rem;
     color:#555;
     line-height:1.5;
     margin-top:0.5rem;
}
 .progressBarContainer {
     height:1px;
     background:#e0e0e0;
     border-radius:1px;
     margin-top:1rem;
     overflow:hidden;
}
 .progressBarFill {
     height:100%;
     background:var(--amr-accent);
     width:0%;
     border-radius:1px;
     transition: width 0.1s linear;
}
 .rightPanel {
     flex:1;
     display:flex;
     justify-content:center;
     align-items:center;
     border-radius:12px;
     min-height:300px;
     overflow:hidden;
}
 .imageWrapper {
     position:relative;
     width:100%;
     height:100%;
     border-radius:8px;
     overflow:hidden;
}
 .image {
     width:100%;
     height:100%;
     object-fit:cover;
     border-radius:8px;
     transition: transform 0.5s ease-in-out;
     display:block;
}
 .mobileImageWrapper {
     margin-top:1rem;
     display:block;
     width:100%;
     text-align:center;
     overflow:hidden;
     padding:0 1rem;
     box-sizing:border-box;
}
 .mobileImage {
     max-width:100%;
     height:auto;
     object-fit:contain;
     border-radius:10px;
     display:inline-block;
}
 .stepItem, .stepContent {
     overflow:visible;
     width:100%;
     box-sizing:border-box;
}
 .stepContent {
     max-height:0;
     opacity:0;
     overflow:hidden;
     transform: translateY(-10px);
     transition: max-height 0.5s ease, opacity 0.5s ease, transform 0.5s ease;
}
 .stepItem.active .stepContent {
     max-height:500px;
     opacity:1;
     transform: translateY(0);
     transition: opacity 0.5s ease, transform 0.5s ease;
}
 .stepItem .mobileImageWrapper {
     opacity:0;
     transform: scale(0.95);
     transition: opacity 0.5s ease, transform 0.5s ease;
}
 .stepItem.active .mobileImageWrapper {
     opacity:1;
     transform: scale(1);
}
.refServicessec .intro {
	width:100%;
    max-width: 50%;
    margin: 0 auto 60px auto;
}

.refServicessec .intro h2{
	font-weight:700;
}
 @media (min-width: 767px) {
     .mobileImageWrapper {
         display:none;
    }
	 .refServicessec .intro{
		 width:100%;
         max-width: 100%
	 }
}
 @media (max-width: 767px) {
	.refServicessec .intro{
		 max-width:100%;
		 width:100%;
	 }
	 .section-title{
		 font-size:24px !important;
	 }
     .rightPanel {
         display:none;
    }
     .heading {
         font-size:18px;
    }
}
.cr-ar-post-title-link {
	color: #000 !important;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.main-header-cr {
	padding: 90px 0 30px 0;
    font-family: "Poppins", Sans-serif;  
}

.main-cr-ar {
	background: #f1f1f2;
	border-radius: 80px 80px 0px 0px;
	padding: 90px 0px;
	font-family: "Poppins", Sans-serif;
}

.cr-ar-container {
	max-width: 1500px;
	margin: 0 auto;
	padding: 0 16px;
	box-sizing: border-box;
}

.cr-ar-grid {
	display: grid;
	grid-template-columns: 320px 1fr;
	gap: 30px;
	align-items: start;
}
.cr-ar-page-header {
    width: 45%;
}

.cr-ar-page-header p {
    font-size: 20px;
    opacity: .7;
}
.cr-ar-ajax-filter {
	background: #fff;
	border-radius: 10px;
	padding: 20px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, .06);
	box-sizing: border-box;
}

.cr-ar-filter-block {
	margin-bottom: 14px;
}

.cr-ar-label {
	display: block;
	font-weight: 600;
	margin-bottom: 6px;
	font-size: 14px;
	color: #333;
}

.cr-ar-search,
.cr-ar-select,
.cr-ar-news-email {
	width: 100%;
	padding: 10px 12px !important;
	border-radius: 8px !important;
	border: 1px solid #e6e9ee !important;
	box-sizing: border-box;
	font-size: 14px;
}

.cr-ar-newsletter {
    padding: 20px;
    border-radius: 8px;
    background: #fbfbfb;
    border: 1px solid #ebe6e7;
	margin:0;
}

.cr-ar-news-title {
	margin: 0 0 6px 0;
	font-size: 16px;
}

.cr-ar-news-desc {
	margin: 0 0 8px 0;
	color: #666;
	font-size: 14px;
}

.cr-ar-news-submit {
	margin-top: 8px;
	width: 100%;
	padding: 10px;
	border-radius: 999px;
	background: #1a2b3a;
	color: #fff;
	border: none;
	cursor: pointer;
	font-size: 14px;
}

.cr-ar-news-msg {
	margin-top: 8px;
	font-size: 13px;
	color: #2b6a2b;
}

.cr-ar-results {
	color: #333;
}

.cr-ar-posts-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.cr-ar-post-card {
	background: #fff;
	border-radius: 12px;
	padding: 18px;
	box-shadow: 0 6px 18px rgba(29, 33, 41, 0.06);
	display: flex;
	flex-direction: column;
}

.cr-ar-thumb-link {
	display: block;
	border-radius: 8px;
	overflow: hidden;
	margin-bottom: 12px;
	border: 1px solid #4a00e1;
}

.cr-ar-thumb {
	width: 100%;
	height: 180px;
	object-fit: cover;
	display: block;
}

.cr-ar-thumb-placeholder {
	width: 100%;
	height: 180px;
	background: #f5f5f5;
	border-radius: 6px;
}

.cr-ar-post-title {
	margin: 0 0 8px;
	font-size: 18px !important;
	line-height: 1.5em;
}

.cr-ar-post-date {
	color: #4a00e1;
	font-size: 15px;
	margin-bottom: 10px;
	font-weight: 600;
}

.cr-ar-post-excerpt {
	color: #000;
	font-size: 16px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}
.cr-ar-readmore {
	display: flex;
	align-items: center;
	gap: 1rem;
	border: 1px solid #4a00e1;
	border-radius: 8px;
	padding: 5px 20px;
	font-size: 14px;
	color: rgb(0, 0, 0) !important;
	text-decoration: none;
	width: max-content;
	transition: color 0.3s ease;
	font-weight: 500;
	margin-top: 15px;
}

.cr-ar-readmore:hover {
  color: #4a00e1;
}

.cr-ar-readmore img {
  display: inline-block;
}

.cr-ar-server-pagination {
	margin-top: 28px;
}

.cr-ar-ajax-pagination {
	margin-top: 18px;
	text-align: center;
}

.cr-ar-ajax-pagination ul {
	list-style: none;
	display: inline-flex;
	gap: 10px;
	padding: 0;
	margin: 0;
	align-items: center;
}

.cr-ar-ajax-pagination a {
	color: inherit;
	text-decoration: none;
	display: inline-block;
	padding: 6px 8px;
	border-radius: 4px;
	border: 1px solid #eee;
}

.cr-ar-ajax-pagination a:hover {
	background: #fafafa;
}

.cr-ar-ajax-pagination .cr-ar-current {
	padding: 6px 8px;
	border-radius: 4px;
	background: #fff;
	color: #6b21a8;
	border: 1px solid #eee;
}

.cr-ar-no-posts {
	color: #666;
}

@media (max-width:1000px) {
	.cr-ar-posts-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}

@media (max-width:700px) {
	.cr-ar-grid {
		grid-template-columns: 1fr;
	}

	.cr-ar-sidebar {
		order: 2;
	}

	.cr-ar-archive-posts {
		order: 1;
	}

	.cr-ar-posts-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}