.matrimony-page{padding:0;background:#fff;}
.city-matrimony-hero{width:100%;position:relative;background:#fff;overflow:hidden;}
.hero-main{display:flex;align-items:stretch;position:relative;min-height:600px;background:#fff7f8;}
.hero-left{width:calc(100% - 460px);min-width:0;position:relative;overflow:hidden;min-height:600px;}
.hero-image-area{position:absolute;inset:0;width:100%;height:100%;background:#fff;}
.hero-banner-img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;opacity:1;image-rendering:auto;}
.hero-image-area:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(255,248,249,1) 0%,rgba(255,248,249,.99) 12%,rgba(255,248,249,.96) 22%,rgba(255,248,249,.88) 31%,rgba(255,248,249,.72) 39%,rgba(255,248,249,.48) 47%,rgba(255,248,249,.24) 54%,rgba(255,248,249,.08) 60%,rgba(255,248,249,0) 67%);}
.hero-title-area{position:relative;z-index:3;width:50%;padding:68px 20px 30px 5.5%;}
.main-heading{margin:0;color:#111827;font-size:52px;line-height:1.08;font-weight:700;max-width:520px;}
.hero-subheading{margin:15px 0 0;color:#29364a;font-size:23px;line-height:1.45;font-weight:400;max-width:590px;}
.heading-line{display:block;width:70px;height:3px;margin-top:22px;background:#ed1c4e;border-radius:10px;}
.profile_count{color:#ed1c4e;}

.hero-register{width:460px;flex:0 0 460px;padding:28px 28px 28px 15px;position:relative;z-index:5;background:#fff9fa;}
.register-card{width:100%;background:#fff;border-radius:18px;padding:24px 25px 20px;box-shadow:0 10px 35px rgba(25,35,55,.09);}
.register-title{margin:0;color:#111827;font-size:27px;line-height:1.2;font-weight:700;}
.register-subtitle{margin:5px 0 18px;color:#626b79;font-size:13px;line-height:1.45;}
.register-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.form-group-custom{margin-bottom:13px;}
.form-group-custom>label{display:block;margin:0 0 5px;color:#252b36;font-size:13px;line-height:1.3;font-weight:600;}
.register-card .form-control{display:block;width:100%!important;height:43px!important;margin:0!important;padding:0 11px!important;border:1px solid #d9dde5!important;border-radius:7px!important;background:#fff!important;color:#222!important;font-size:13px!important;box-shadow:none!important;outline:none!important;}
.register-card select.form-control{cursor:pointer;}
.register-card .form-control::placeholder{color:#9aa1ad!important;}
.register-card .form-control:focus{border-color:#ed1c4e!important;box-shadow:0 0 0 3px rgba(237,28,78,.06)!important;}
.register-gender{height:43px;display:flex;align-items:center;gap:17px;}
.register-gender label{display:inline-flex;align-items:center;gap:5px;margin:0;color:#343944;font-size:13px;font-weight:500;cursor:pointer;}
.register-gender input[type=radio]{width:16px;height:16px;margin:0;accent-color:#ed1c4e;cursor:pointer;}
.dob-flex{display:grid;grid-template-columns:.8fr .8fr 1.25fr;gap:7px;}
.dob-flex .form-control{min-width:0;}
.phone-flex{display:flex;width:100%;}
.phone-code{width:95px!important;flex:0 0 95px;border-radius:7px 0 0 7px!important;}
.phone-number{flex:1;min-width:0;border-left:0!important;border-radius:0 7px 7px 0!important;}
.phone-error{display:block;margin-top:5px;color:#e11d48;font-size:11px;}
.register-btn{width:100%;height:47px;border:0;border-radius:7px;background:#ed1c4e;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:.2s;}
.register-btn:hover{background:#d91545;}
.register-terms{margin:9px 0 0;text-align:center;color:#757c87;font-size:11px;line-height:1.45;}
.register-terms a{color:#ed1c4e;text-decoration:none;}
.register-terms a:hover{text-decoration:underline;}

.city-content{max-width:1180px;margin:0 auto;padding:38px 35px 48px;text-align:center;background:#fff;}
.city-content h2{margin:0;color:#111827;font-size:34px;line-height:1.3;font-weight:700;}
.content-line{display:block;width:60px;height:4px;margin:15px auto 22px;background:#ed1c4e;border-radius:10px;}
.city-content p{max-width:1100px;margin:auto;color:#515b6b;font-size:17px;line-height:1.8;text-align:left;}

.profile-list-row{margin-top:30px;}
.profile-result-card{position:relative;display:flex;width:100%;min-height:275px;margin-bottom:22px;background:#fff;border:1px solid #edf0f4;border-radius:16px;overflow:hidden;box-shadow:0 5px 20px rgba(20,30,50,.06);transition:.2s ease;}
.profile-result-card:hover{box-shadow:0 9px 28px rgba(20,30,50,.10);transform:translateY(-1px);}
.profile-result-image{width:285px;flex:0 0 285px;padding:14px;background:#fafafa;}
.profile-result-image img{width:100%;height:245px;display:block;object-fit:cover;object-position:center;border-radius:12px;}
.profile-result-info{flex:1;min-width:0;padding:24px 28px;}
.profile-result-info h3{margin:0 0 20px;font-size:20px;line-height:1.3;font-weight:700;color:#ed1c24;}
.profile-result-info h3 span{font-weight:600;}
.profile-details-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;row-gap:0;}
.profile-detail{display:grid;grid-template-columns:145px 1fr;gap:10px;align-items:start;padding:7px 0;border-bottom:1px solid #f2f3f5;}
.profile-detail span{color:#80858e;font-size:14px;font-weight:500;}
.profile-detail strong{color:#353a43;font-size:14px;font-weight:600;line-height:1.45;overflow-wrap:anywhere;}
.profile-plan-badge{position:absolute;top:14px;right:14px;z-index:5;padding:6px 12px;border-radius:20px;background:#ed1c4e;color:#fff;font-size:11px;font-weight:600;}
.view-more-profiles{text-align:center;margin:10px 0 30px;}
.view-more-profiles a{display:inline-block;padding:11px 28px;border-radius:8px;background:#ed1c4e;color:#fff;font-size:14px;font-weight:600;text-decoration:none;}
.view-more-profiles a:hover{background:#d91545;color:#fff;text-decoration:none;}

.profile-filter-box{width:100%;background:#fff;border:1px solid #e7e9ee;border-radius:12px;overflow:hidden;box-shadow:none;}
.profile-filter-title{padding:17px 20px;background:#fff;border-bottom:1px solid #edf0f4;color:#182033;font-size:17px;font-weight:700;}
.profile-filter-body{padding:18px 20px 20px;}
.profile-filter-search{width:100%!important;height:46px!important;margin:0 0 12px!important;padding:0 13px!important;border:1px solid #d2d6de!important;border-radius:8px!important;background:#fff!important;color:#222!important;font-size:14px!important;box-shadow:none!important;}
.profile-filter-search::placeholder{color:#999!important;}
.profile-filter-search:focus{border-color:#ed1c4e!important;outline:none!important;box-shadow:0 0 0 3px rgba(237,28,78,.06)!important;}
.profile-filter-links{max-height:500px;overflow-y:auto;padding-right:5px;}
.profile-filter-links a{display:block;position:relative;margin:2px 0;padding:9px 12px;border-radius:7px;background:transparent;color:#202735!important;font-size:14px;font-weight:500;line-height:1.35;text-decoration:none!important;transition:.15s ease;}
.profile-filter-links a:hover{background:#fff5f7;color:#ed1c4e!important;text-decoration:none;}
.profile-filter-links a.active{background:#fff0f3;color:#ed1c4e!important;font-weight:700;padding-left:17px;}
.profile-filter-links a.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:#ed1c4e;border-radius:0 4px 4px 0;}
.profile-filter-links::-webkit-scrollbar{width:5px;}
.profile-filter-links::-webkit-scrollbar-track{background:transparent;}
.profile-filter-links::-webkit-scrollbar-thumb{background:#d2d2d2;border-radius:10px;}

@media(max-width:1400px){
.hero-title-area{width:54%;padding-left:5%;}
.main-heading{font-size:48px;}
.hero-subheading{font-size:21px;}
}

@media(max-width:1200px){
.hero-left{width:calc(100% - 420px);}
.hero-register{width:420px;flex-basis:420px;padding-right:18px;}
.hero-title-area{width:58%;padding-left:5%;}
.main-heading{font-size:43px;}
.hero-subheading{font-size:20px;}
.register-card{padding:22px 20px;}
}

@media(max-width:991px){
.hero-main{display:block;min-height:auto;}
.hero-left{width:100%;min-height:500px;}
.hero-title-area{width:55%;padding-top:60px;}
.hero-register{width:100%;max-width:650px;flex:none;margin:0 auto;padding:25px 15px 30px;background:#fff;}
.profile-result-card{min-height:240px;}
.profile-result-image{width:230px;flex-basis:230px;}
.profile-result-image img{height:215px;}
.profile-result-info{padding:20px;}
.profile-details-grid{grid-template-columns:1fr;}
.profile-detail{grid-template-columns:135px 1fr;}
.profile-filter-box{margin-top:25px;}
.profile-filter-links{max-height:350px;}
}

@media(max-width:767px){
.hero-left{min-height:auto;display:flex;flex-direction:column;background:#fff7f8;}
.hero-title-area{order:1;width:100%;padding:28px 18px 22px;text-align:center;background:#fff7f8;}
.main-heading{font-size:31px;line-height:1.2;max-width:none;}
.hero-subheading{font-size:17px;line-height:1.5;max-width:none;}
.heading-line{margin:15px auto 0;}
.hero-image-area{order:2;position:relative;width:100%;height:260px;}
.hero-image-area:before{display:none;}
.hero-banner-img{height:260px;opacity:1;}
.hero-register{width:100%;max-width:540px;padding:18px 15px 30px;}
.register-card{padding:21px 18px;border-radius:14px;}
.register-title{font-size:24px;}
.register-grid{grid-template-columns:1fr;gap:0;}
.register-gender{height:auto;min-height:43px;}
.city-content{padding:30px 18px;}
.city-content h2{font-size:27px;}
.city-content p{font-size:15px;line-height:1.7;}
.profile-list-row{margin-top:20px;}
.profile-result-card{display:block;border-radius:13px;margin-bottom:18px;}
.profile-result-image{width:100%;padding:12px;}
.profile-result-image img{width:100%;height:290px;border-radius:10px;}
.profile-result-info{padding:14px 16px 18px;}
.profile-result-info h3{font-size:18px;margin-bottom:12px;}
.profile-details-grid{grid-template-columns:1fr;}
.profile-detail{grid-template-columns:125px 1fr;padding:6px 0;gap:8px;}
.profile-detail span,.profile-detail strong{font-size:13px;}
.profile-plan-badge{top:20px;right:20px;}
}

@media(max-width:480px){
.main-heading{font-size:27px;}
.hero-subheading{font-size:16px;}
.hero-image-area,.hero-banner-img{height:220px;}
.register-card{padding:19px 14px;}
.register-title{font-size:22px;}
.dob-flex{grid-template-columns:.8fr .8fr 1.2fr;gap:5px;}
.dob-flex .form-control{padding:0 6px!important;font-size:12px!important;}
.phone-code{width:85px!important;flex-basis:85px;}
.profile-result-image img{height:250px;}
.profile-detail{grid-template-columns:110px 1fr;}
.profile-result-info{padding:13px;}
}