.hero-section{background:#f0f1fb; padding:6rem 0; position: relative; overflow: hidden; }
.hero-inner { display: flex; flex-direction: column; gap: 4rem; align-items: center; }
.hero-content { flex: 1; display: flex; flex-direction: column; gap: 2.5rem; text-align: center; z-index: 2; }
.hero-title { font-size: 4.5rem; line-height: 1.15; color: #292e6e; letter-spacing: -0.05rem; padding-bottom:2.5rem; position:relative; }
.hero-title::before{content:"";position:absolute;bottom:0;height:4px;background:#e86ca3;width:10rem;left:50%;transform:translateX(-50%);}
.hero-action-btns { display: flex; justify-content: center; gap: 1.5rem; flex-wrap: wrap; }
.hero-lead-form { display: flex; background: #ffffff; border: 1px solid #E0E0E0; border-radius: 5rem; padding: 0.5rem; max-width:45rem; margin: 0 auto 3rem; box-shadow: 0 10px 25px rgba(0,0,0,0.04); transition: border-color 0.3s ease; }
.hero-lead-form:focus-within { border-color: #e86ca3; }
.lead-input { flex: 1; border: none; background: transparent; padding: 1rem 2rem; font-family: 'Manrope', sans-serif; font-size: 1.6rem; outline: none; color: #333333; width:100%;}
.lead-input::placeholder { color: #999999; }

.mini-success-popup{position:fixed;bottom:20px;left:20px;right:20px;background:#fff;padding:1.5rem 2.5rem;border-radius:1rem;box-shadow:0 10px 30px #00000026;border-left:4px solid #e86ca3;z-index:9999;transform:translateY(50px);opacity:0;visibility:hidden;transition:all .4s cubic-bezier(0.16,1,0.3,1);display:flex;justify-content:center}
.mini-success-popup.show{transform:translateY(0);opacity:1;visibility:visible}
.popup-content{display:flex;align-items:center;justify-content:center;gap:1rem;font-family:'Manrope',sans-serif;font-size:1.5rem;font-weight:600;color:#28306f}

.relative-container { position: relative; z-index: 5;}
.hero-stats-card { display: flex; flex-direction: column; border-radius: 1.2rem; box-shadow: 0 20px 40px rgba(0,0,0,0.08); overflow: hidden; }
.stat-box { flex: 1; display: flex; align-items: center; gap: 2rem; padding: 2.5rem; }
.dark-box { background: linear-gradient(135deg, #292e6e 0%, #2D2D5E 100%); }
.light-box { background: #ffffff; }
.stat-icon { width: 5rem; height: 5rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.dark-icon { background: rgba(255,255,255,0.1); }
.light-icon { background: #e86ca3; }
.stat-text { font-size: 1.6rem; line-height: 1.6; margin: 0; }

.center-align{text-align:center; margin-bottom: 5rem; position: relative; z-index: 2; }
.explore-section { padding:4rem 0 8rem;}
.services-interactive-wrapper { display: flex; flex-direction: column; gap: 1.5rem; max-width: 80rem; margin: 4rem auto 0; }
.service-module { border-radius: 1.2rem; position: relative; }
.service-trigger { width: 100%; display: flex; align-items: center; justify-content: space-between; padding:0.5rem 2rem; background: linear-gradient(90deg, #fff 0%, #fff 100%); border: 1px solid #e86ca3; border-radius: 1.2rem; cursor: pointer; transition: all 0.1s ease; color: #1A1A3A; }
.trigger-left { display: flex; align-items: center; gap: 1.5rem; }
.icon-placeholder{width:5.5rem;}
.trigger-text {font-size: 1.5rem; font-weight: 600; text-align: left; }
.trigger-toggle { color: #e86ca3; transition: color 0.3s ease; }
.icon-plus { display: block; }
.icon-minus { display: none; }
.service-module.active .service-trigger { background: linear-gradient(90deg, #2A2359 0%, #e86ca3 100%); color: #ffffff; border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.service-module.active .trigger-toggle { color: #ffffff; }
.service-module.active .icon-plus { display: none; }
.service-module.active .icon-minus { display: block; }
.service-panel { max-height: 0; overflow: hidden; transition: max-height 0.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.5s ease; opacity: 0; }
.service-module.active .service-panel { max-height: 250rem; opacity: 1; }
.panel-card { background: #ffffff; padding: 2.5rem; border: 1px solid #EAEAEA; border-top: none; border-bottom-left-radius: 1.2rem; border-bottom-right-radius: 1.2rem; box-shadow: 0 10px 20px rgba(0,0,0,0.04); }
.panel-title { font-size: 2.5rem; color:#292e6e; margin-bottom: 1.5rem; padding-bottom: 1.5rem; position:relative;}
.panel-title::before{content:"";position:absolute;bottom:0;height:4px;background:#e86ca3;width:10rem;left:0;}
.panel-desc { font-size: 1.6rem; line-height: 1.7; color: #222; margin-bottom: 1.5rem; }
.panel-tags { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2.5rem; }
.tag-pill { border: 1px solid #e86ca3; color:#292e6e; font-size: 1.3rem; padding: 0.6rem 2rem; border-radius: 5rem; font-weight: 600; font-family: 'Manrope', sans-serif; }

.contact-message-section{padding:4rem 0 8rem;background:radial-gradient(circle at 48% 8%, rgba(255,110,210,.35) 0%, rgba(255,110,210,0) 22%), radial-gradient(circle at 32% 78%, rgba(255,110,210,.35) 0%, rgba(255,110,210,0) 25%), radial-gradient(circle at 72% 58%, rgba(255,110,210,.30) 0%, rgba(255,110,210,0) 22%), linear-gradient(135deg, #232a75 0%, #5f4588 50%, #232a75 100%); text-align: center; color: #ffffff; position: relative; overflow: hidden; }
.contact-message-section::before { content: ''; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: radial-gradient(circle at 50% 50%, rgba(232, 93, 117, 0.15) 0%, transparent 60%); pointer-events: none; }
.contact-wrapper{display:flex;flex-direction:column;gap:0;max-width:90rem;margin:0 auto}
.contact-heading{color:#fff;font-size:2.5rem;margin-bottom:1rem;font-weight:600;font-family: 'Manrope', sans-serif;}
.heading-underline{width:15rem;height:1px;background:#e86ca3;margin:0 auto 3rem;}
.form-input{width:100%;padding:1.5rem 2.5rem;border-radius:5rem;border:none;font-size:1.5rem;outline:none;margin-bottom:2rem;box-shadow:0 4px 15px #0000001a;font-family:'Manrope',sans-serif;transition:box-shadow .3s ease}
.form-input:focus,.form-textarea:focus{box-shadow:0 0 0 3px #e86ca366}
.form-textarea{width:100%;height:18rem;padding:2.5rem;border-radius:2rem;border:none;font-size:1.5rem;outline:none;resize:none;box-shadow:0 4px 15px #0000001a;font-family:'Manrope',sans-serif;margin-bottom:2rem}
.contact-divider{display:none}
.submit-wrapper{text-align:center}
.btn-submit{background-color:#2A2359;color:#fff;border:1px solid #e86ca3;padding:1.2rem 6rem;border-radius:5rem;font-size:1.6rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 0 15px #e86ca34d;font-family:'Manrope',sans-serif}
.btn-submit:hover{background-color:#e86ca3;box-shadow:0 5px 20px #e86ca399;transform:translateY(-3px)}

.w-100{width:100%}
.custom-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f112bd9;z-index:99999;display:flex;align-items:center;justify-content:center;padding:2rem;opacity:0;visibility:hidden;transition:all .3s ease}
.custom-modal.open{opacity:1;visibility:visible}
.modal-dialog{background:#fff;width:100%;border-radius:1.5rem;position:relative;transform:scale(0.95);transition:transform .3s ease;max-height:90vh;overflow-y:auto}
.custom-modal.open .modal-dialog{transform:scale(1)}
.close-modal{position:absolute;top:1.5rem;right:1.5rem;background:#f0f0f0;border:none;width:3.5rem;height:3.5rem;border-radius:50%;font-size:2rem;color:#4a4a4a;cursor:pointer;transition:background .3s;z-index:10}
.close-modal:hover{background:#e86ca3;color:#fff}
.modal-content{padding:4rem 2rem;text-align:center}
.modal-title{font-family:'Cormorant Garamond',serif;font-size:3rem;color:#28306f;}
.modal-subtitle{font-family:'Manrope',sans-serif;font-size:1.4rem;color:#222;margin-bottom:1rem}
.modal-success-state{padding:4rem 0;text-align:center;animation:popIn .5s ease forwards}
.success-icon-box{width:8rem;height:8rem;background:#fcf1f4;color:#e86ca3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:4rem;margin:0 auto 2rem}

.popup-form{display:flex;flex-direction:column;gap:1.5rem;text-align:left;width:100%}
.popup-form .outline-input{width:100%;padding:1.4rem 2rem;border-radius:5rem;border:1px solid #E0E0E0;background-color:#FDFDFE;font-size:1.4rem;font-family:'Manrope',sans-serif;color:#222;outline:none;transition:all .3s ease;box-shadow:inset 0 2px 4px #00000005}
.popup-form .outline-textarea{width:100%;padding:1.5rem 2rem;border-radius:1.5rem;border:1px solid #E0E0E0;background-color:#FDFDFE;font-size:1.4rem;font-family:'Manrope',sans-serif;color:#222;outline:none;resize:vertical;transition:all .3s ease}
.popup-form .outline-input:focus,.popup-form .outline-textarea:focus{border-color:#e86ca3;background-color:#fff;box-shadow:0 0 0 3px #e85d7526}
.popup-form select.outline-input{cursor:pointer;appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%2328306f%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 2rem top 50%;background-size:1.2rem auto;padding-right:4rem}
.popup-form .btn-gradient-submit{background:linear-gradient(90deg,#e86ca3 0%,#28306f 100%);color:#fff;padding:1.5rem 3rem;border-radius:5rem;font-size:1.6rem;font-weight:600;border:none;cursor:pointer;font-family:'Manrope',sans-serif;box-shadow:0 5px 15px #e85d754d;transition:all .3s cubic-bezier(0.16,1,0.3,1);margin-top:1rem}
.popup-form .btn-gradient-submit:hover{transform:translateY(-3px);box-shadow:0 8px 25px #28306f66}
input[type="date"].outline-input{color:#222;font-family:'Manrope',sans-serif}

@media (min-width: 768px) {
	.mini-success-popup{top:50%;left:50%;bottom:auto;right:auto;width:max-content;transform:translate(-50%,calc(-50% + 50px))}
	.mini-success-popup.show{transform:translate(-50%,-50%)}
	.trigger-text {font-size:1.8rem; font-weight:400}
	.modal-dialog{width:45rem}
	.modal-content{padding:4rem}
}
@media (min-width: 992px) {
	.hero-section{background:url("../images/services/banner.jpg") center top/min(100%,1527px) auto no-repeat; background-color:#f0f1fb; position:relative; overflow:visible;padding:4rem 0;}
	.hero-inner { flex-direction: row; text-align: left; }
	.hero-content { text-align: left; padding-right: 4rem; }
	.hero-title::before{left:0;transform:translateX(0);}
	.hero-action-btns { justify-content: flex-start; }
	.hero-lead-form { margin: 0; }
	.hero-title { font-size: 6.2rem; }
	.relative-container {position:absolute; bottom:-6rem; left:50%; transform:translateX(-50%);}
	.hero-stats-card { flex-direction: row; }
	.stat-box { padding: 3.5rem 4rem; }	

	.services-interactive-wrapper { flex-direction: row; align-items: flex-start; max-width: 120rem; position: relative; min-height: 62rem; display: block; }
	.service-module{width:35%; margin-bottom:1rem; position: static; }
	.service-trigger { position: relative; border-radius: 1.2rem; }
	.service-module.active .service-trigger{ border-radius: 1.2rem; }
	.service-module.active .service-trigger::after{content: ''; position: absolute; right:-14px;top:50%; transform: translateY(-50%);width:0;height:0;border-top:14px solid transparent;border-bottom:14px solid transparent;border-left:14px solid #e86ca3;z-index: 5;}
	.service-panel { position: absolute; top: 0; right: 0; width: calc(65% - 4rem); max-height: none; overflow: visible; opacity: 0; visibility: hidden; transition: opacity 0.4s ease, transform 0.4s ease; transform: translateY(15px); }
	.service-module.active .service-panel { opacity: 1; visibility: visible; transform: translateY(0); }
	.panel-card { border: none; border-radius: 1.6rem; box-shadow: 0 15px 40px rgba(0,0,0,0.08); padding: 5rem; height: 100%; min-height: 60rem; }
	.panel-title { font-size:3rem; margin-bottom: 2rem; padding-bottom: 2rem; }	

	.contact-wrapper{flex-direction:row;align-items:center;gap:4rem}
	.contact-left{flex:1}
	.contact-right{flex:1.5;display:flex;flex-direction:column;justify-content:space-between}
	.contact-divider{display:block;width:1px;height:18rem;background-color:#2A2359;box-shadow:1px 0 0 #ffffff1a}
	.form-input:last-child{margin-bottom:0}
	.form-textarea{height:12.5rem}
}
@media (min-width:1280px) {
	.hero-section{padding:8rem 0;}
	.contact-wrapper{max-width:100rem;}
	.contact-right{flex:1;}
}
@media (min-width:1600px) {
	.hero-section{padding:10rem 0 15rem;}
	.hero-action-btns .btn, .hero-lead-form .btn{font-size:1.6rem;}

	.services-interactive-wrapper {max-width:140rem;}
	.service-module{width:30%;}
	.panel-title{font-size:3.5rem;}
	.service-panel{width:calc(70% - 4rem);}

	.contact-message-section{padding:5rem 0 8rem}
}