
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
body { font-family: 'Bricolage Grotesque', system-ui, -apple-system, sans-serif; color: #1A1025; background: #FFF9F7; overflow-x: hidden; line-height: 1.5; -webkit-overflow-scrolling: touch; }
::selection { background: #FF3366; color: #fff; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }

.wrapper { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.photos_banner{display: none;}
@media(min-width:768px) { .wrapper { padding: 0 40px; }.mbl_title{display: none;} }

/* ═══ HEADER / NAV ═══ */
.header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255,249,247,0.88);
  backdrop-filter: blur(24px) saturate(150%);
  -webkit-backdrop-filter: blur(24px) saturate(150%);
  border-bottom: 1px solid rgba(0,0,0,0.07);
}

.qq-nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 72px;
  gap: 16px;
}

.logo { display: flex; align-items: center; flex-shrink: 0; }
.logo img { height: 42px; width: auto; }

/* Nav menu links */
.menu {
  display: flex;
  list-style: none;
  gap: 4px;
  align-items: center;
}
@media(max-width:840px) { .menu { display: none !important; } }

.menu li a {
  padding: 8px 16px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 600;
  color: rgba(26,16,37,0.55);
  transition: all 0.2s;
}
.menu li a:hover { color: #FF3366; background: rgba(255,51,102,0.04); }
/* .menu li a.active { color: #FF3366; } */

/* Nav action buttons */
.qq-nav-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  list-style: none;
}

.qq-btn-login {
  padding: 10px 24px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 700;
  color: #FF3366;
  transition: all 0.2s;
}
.qq-btn-login:hover { background: rgba(255,51,102,0.04); }

.qq-btn-signup {
  padding: 10px 24px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  background: #FF3366;
  transition: all 0.25s cubic-bezier(0.34,1.56,0.64,1);
  box-shadow: 0 2px 12px rgba(255,51,102,0.2);
}
.qq-btn-signup:hover { transform: translateY(-1px); box-shadow: 0 4px 20px rgba(255,51,102,0.3); }

@media(max-width:560px) { .qq-btn-login { display: none !important; } }

/* Mobile hamburger */
.toggle-wrapper { display: none; }
@media(max-width:560px) { .toggle-wrapper { display: flex; } }
.toggle-wrapper .show {
  display: flex;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
  padding: 8px;
}
.hicon { display: block; width: 22px; height: 2px; background: #1A1025; border-radius: 2px; }

/* Navigation overlay (mobile) */
.navigation { display: flex; align-items: center; gap: 16px; }
.transparent_menu, .hideicon { display: none; }

/* ═══ HERO / BANNER ═══ */
.banner {
  padding: 32px 0 40px;
  position: relative;
}
@media(min-width:768px) { .banner { padding: 48px 0 60px; } }

.banner_box {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  align-items: start;
}
@media(min-width:820px) {
  .banner_box { grid-template-columns: 1.1fr 0.9fr; gap: 48px; }
}

/* Banner heading (from H1) */
.banner h1,
.banner_box h1 {
  font-size: clamp(28px, 5vw, 38px);
  font-weight: 800;
  color: #1A1025;
  line-height: 1.12;
  letter-spacing: -0.02em;
  margin-bottom: 16px;
}

/* Banner content text */

@media(min-width:820px) { .banner_cont { order: -1; } }

.cnt_text p,
.cnt_flexbox p {
  font-size: 15px;
  color: rgb(107, 102, 128);
  line-height: 1.8;
}

/* ═══ PHOTOS BANNER ═══ */
.photos_banner,
#photos_banner {
  padding: 0 0 40px;
  display: none;
}
@media(min-width:768px) {
  .photos_banner { padding: 0 0 48px; display: block; }
}
.photos_banner img { border-radius: 20px; width: 100%; height: auto; }

/* ═══ TRUST BADGES ═══ */
.qq-trust-bar,
.cnt_listnew {
  padding:60px 0 0;
  /* border-top: 1px solid rgba(0,0,0,0.07);
  border-bottom: 1px solid rgba(0,0,0,0.07);
  background: #FFFFFF; */
}

.qq-trust-grid,
.cnt_listnew .wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  max-width: 1200px;
  margin: 0 auto;padding: 0 40px;
}
.qq-trust-icon{
  width: 46px;
    height: 46px;
    border-radius: 14px;
    background: rgb(230, 248, 241);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}
@media(min-width:640px) {
  .qq-trust-grid,
  .cnt_listnew .wrapper { grid-template-columns: repeat(4, 1fr); }
    .qq-trust-item{
    justify-content: flex-start;
    align-items: flex-start;   
}
.qq-trust-text strong{font-size: 16px;}
}
.gender_block{font-size: 12px;color: rgb(154, 149, 171);display: block;font-weight: 400}
.qq-trust-item,
.cnt_list_item {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-start;
  padding: 16px;
  background: #fff;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.05);
}

.qq-trust-icon,
.cnt_list_item_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;margin:0
}

.qq-trust-text,
.cnt_list_item_txt {
  font-size: 13px;
  color: rgba(26,16,37,0.6);
  font-weight: 500;
}
.qq-trust-text strong,
.cnt_list_item_txt span {
  color: #1A1025;
  font-weight: 800;
  display: block;
}

/* ═══ STATS STRIP (block3) ═══ */
.block3 {
  position: relative;
  padding: 48px 0;
  overflow: hidden;
}

.block3_bg {
  position: absolute;
  inset: 0;
      background: rgba(255, 255, 255, 0.55);
    border-top: 1px solid rgba(236, 232, 242, 0.8);
    border-bottom: 1px solid rgba(236, 232, 242, 0.8);
    backdrop-filter: blur(4px);
}

.block3 .wrapper {
  position: relative;
  z-index: 1;
}

.block3_cont {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  text-align: center;
}
@media(min-width:640px) { .block3_cont { grid-template-columns: repeat(3, 1fr); } }
@media(min-width:1024px) { .block3_cont { grid-template-columns: repeat(6, 1fr); } }


.txt_list small {
  font-size: 11px;
  color: rgba(255,255,255,0.45);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* ═══ BREADCRUMBS ═══ */
.breadcrumbs {
  padding: 16px 0;
  border-bottom: 1px solid rgba(0,0,0,0.07);
}
.breadcrumbs .wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: rgba(26,16,37,0.35);
}
.breadcrumbs a {
  color: #000;
  transition: color 0.2s;
}
.breadcrumbs a:hover { color: #FF3366; }
.b_arrow {
  display: inline-block;
  font-size: 11px;
}
.b_arrow::before { content: '›'; }
.breadcrumbs small { font-style: normal;color: #000;text-transform: capitalize; }
/* ═══════════════════════════════════════════════════
   QuackQuack Registration Form — Gen Z Theme
   Drop-in CSS — works with existing HTML class names
   ═══════════════════════════════════════════════════ */

/* ── Form Card ── */
.reg_form {
  max-width: 420px;
  width: 100%;
}

.form_main {
  border-radius: 24px;
  overflow: hidden;
      background: rgb(255, 255, 255);
    border: 1px solid rgb(236, 232, 242);
    border-radius: 28px;
    box-shadow: rgba(123, 63, 242, 0.28) 0px 24px 60px -22px, rgba(240, 49, 108, 0.1) 0px 4px 14px -4px;
}

.form_block {
  padding: 32px 28px;
}
@media(min-width:768px) {
  .form_block { padding: 40px 36px; }
}

/* ── Title ── */
.form_title {
  
  margin-bottom: 16px;
}

.form_title strong {
  font-family: 'Bricolage Grotesque', system-ui, -apple-system, sans-serif;
  font-size: 24px;
  font-weight: 800;
  color: #1A1025;
  letter-spacing: -0.02em;
}

/* ── Labels ── */
.enter_txt {
      font-family: "Bricolage Grotesque", sans-serif;
    font-weight: 600;
    font-size: 13px;
    color: rgb(58, 52, 80);
    display: block;
    margin-bottom: 0;
}

/* ── Input Fields ── */
.field_block {
  margin-bottom: 16px;
}

.input_field,
.input_field.mobile_field {
  display: flex;
  align-items: center;gap: 10px;

}

.input_field:focus-within,
.input_field.mobile_field:focus-within {
  border-color: #FF3366;
}

.countrycode_seo {
  padding: 15px 12px 15px 12px;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: #1A1025;
  border: 1.5px solid rgb(236, 232, 242);;
  background: rgb(250, 248, 252);;
  line-height: 1;
  flex-shrink: 0;
  border-radius: 15px
}

.textfield_new {
  flex: 1;
  padding: 15px 18px;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 16px;
  font-weight: 500;
  border: none;
  outline: none;
  flex: 1 1 0%;
    font-family: Inter, sans-serif;
    font-size: 15px;
    padding: 14px 16px;
    border: 1.5px solid rgb(236, 232, 242);
    border-radius: 14px;
    background: rgb(255, 255, 255);
    outline: none;
    color: #000;
  -moz-appearance: textfield;
}

.textfield_new::-webkit-outer-spin-button,
.textfield_new::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.textfield_new::placeholder {
  color: rgba(26,16,37,0.3);
  font-weight: 400;
}

/* OTP field */
.otp_block {
  border-radius: 14px;
}

/* ── Error Message ── */
.error_msg {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: #EF4444;
  margin-top: 6px;
  padding-left: 4px;
}

/* ── Submit Button ── */
.submit_btn,
.submit_btnnext {
  display: block;
  margin-bottom: 0;
}

.upgrade-button_wave {
  width: 100%;
  padding: 16px 32px;
  border: none;
  border-radius: 100px;
  background: #FF3366;
  color: #fff;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.01em;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.34,1.56,0.64,1);
  box-shadow: 0 4px 20px rgba(255,51,102,0.25);
  position: relative;
  overflow: hidden;
}

.upgrade-button_wave::after {
  content: '';
  position: absolute;
  inset: -3px;
  border-radius: 100px;
  background: #FF3366;
  opacity: 0;
  animation: formBtnPulse 2.5s ease-in-out infinite;
  z-index: -1;
}

@keyframes formBtnPulse {
  0%, 100% { opacity: 0; transform: scale(1); }
  50% { opacity: 0.2; transform: scale(1.08); }
}

.upgrade-button_wave:hover {
}

.upgrade-button_wave:active {
  transform: translateY(0) scale(0.98);
}

/* ── OTP Action Buttons (Change / Resend) ── */
.otp_btns {
  display: flex;
  gap: 10px;
  margin-bottom: 16px;
}

.floating__input,
.btnchange {
  flex: 1;
  padding: 12px 16px;
  border: 1.5px solid rgba(0,0,0,0.07);
  border-radius: 12px;
  background: transparent;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #1A1025;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.16,1,0.3,1);
}

.floating__input:hover,
.btnchange:hover {
  border-color: #FF3366;
  color: #FF3366;
  background: rgba(255,51,102,0.03);
}

.btnchange.disable {
  opacity: 0.4;
  pointer-events: none;
  cursor: not-allowed;
}

/* ── SMS / Success Text ── */
.sms_txt {
  display: block;
  font-size: 12px;
  color: rgba(26,16,37,0.5);
  margin-bottom: 8px;
}

.success_txt,
.number_txt {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 13px;
  color: #16A34A;
  font-weight: 600;
  margin-bottom: 12px;
  text-align: center;
}

/* ── Terms Text ── */
.terms_text {
  display: block;
  text-align: center;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 11px;
  font-weight: 400;
  color: rgba(26,16,37,0.35);
  margin-top: 6px;
  line-height: 1.6;
      font-size: 12px;
    line-height: 1.5;
    color: rgb(154, 149, 171);
    text-align: center;
    margin: 16px 0px 0px;
}

.terms_text a {
  color: #FF3366;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.2s;
}

.terms_text a:hover {
  color: #7C3AED;
}

/* ── Loader / Spinner ── */
.spin_loader {
  padding: 16px 0;
}

.dotloader {
  display: flex;
  justify-content: center;
}

.dots-circle-spinner {
  width: 32px;
  height: 32px;
  border: 3px solid rgba(255,51,102,0.15);
  border-top-color: #FF3366;
  border-radius: 50%;
  animation: formSpin 0.7s linear infinite;
}

@keyframes formSpin {
  to { transform: rotate(360deg); }
}
/* ═══════════════════════════════════════════════════
   QuackQuack Profiles Section — Gen Z Theme
   Horizontal card layout (matching screenshot)
   Drop-in CSS — no HTML changes needed
   ═══════════════════════════════════════════════════ */

/* ── Section Container ── */
.profiles_main {
  padding: 48px 0 60px;
  background: #FFF9F7;clear: both; 
}
@media(min-width:768px) {
  .profiles_main { padding: 44px 0 0; } 
}

/* ── Section Title ── */
.profiles_main h3,
.profiles_main .mainting {
  font-family: "Bricolage Grotesque", sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: rgb(26, 20, 48);
    margin: 0px 0px 24px;
}
@media(min-width:768px) {
  .profiles_main h3 { font-size: 26px; margin-bottom: 25px; }
}

/* ── Profiles Grid — 3 columns on desktop ── */
.profiles_wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
@media(min-width:640px) {
  .profiles_wrap { grid-template-columns: repeat(2, 1fr); }
}
@media(min-width:1024px) {
  .profiles_wrap { grid-template-columns: repeat(3, 1fr); }
}

/* ── Profile Card — horizontal layout ── */
.Prof_block {
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  transition: all 0.3s cubic-bezier(0.16,1,0.3,1);
}

.Prof_block:hover {
  border-color: rgba(0,0,0,0.1);
}

/* ── Profile Top — avatar + name side by side ── */
.prof_top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

/* ── Profile Image — small circle ── */
.prof_img {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.prof_img img,
.prof_img .circle_new {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  object-fit: cover;
  background: #E8E0EF;
}

/* Lock icon overlay */
.proflock {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(90, 70, 120, 0.85);
  border-radius: 50%;
}

.proflock .sprite {
      display: flex;
    height: 14px;
    width: 14px;
    font-size: 0;
    justify-content: center;
    align-items: center;

}

/* Online indicator */
.icon_online {
  position: absolute;
  top: 0;
  right: -2px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #16A34A;
  border: 2px solid #FFFFFF;
}

/* ── Profile Name — left aligned ── */
.prof_name {
  display: block;
  text-align: left;
}

.prof_name .uname {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 16px;
  font-weight: 800;
  color: #1A1025;
  line-height: 1.3;
  font-style: normal;
}

/* ── Border divider — hidden ── */
.border_title {
  display: none;
}

/* ── Looking For Tag — colored text ── */
.lookfor {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: rgb(123, 63, 242);
  margin-bottom: 8px;
  text-align: left;
  background: none;
  padding: 0;
  border-radius: 0;
}

/* ── About Text ── */
.about_txt {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 13px;
  color: rgb(107, 102, 128);
  line-height: 1.6;
  margin-bottom: 18px;
  text-align: left;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
  word-break: break-word;
}

/* ── Bottom Action Buttons ── */
.btm_links {
  display: block;
  margin-top: auto;
}

.btm_links a {
  display: flex;
  gap: 10px;
  text-decoration: none;
}

.view_btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  border-radius: 30px;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 13px;
  font-weight: 700;
  font-style: normal;
  text-align: center;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.16,1,0.3,1);
  border: 1.5px solid rgba(0,0,0,0.1);
  color: #1A1025;
  background: transparent;
}


.view_btn.chat_btn {
  border: none;
  background: #FF3366;
  color: #fff;
}

.view_btn.chat_btn:hover {
  background: #E6204F;
  box-shadow: 0 4px 14px rgba(255,51,102,0.25);
}
/* ═══════════════════════════════════════════════════
   QuackQuack Bottom Content / SEO Section — Gen Z Theme
   Layout: Content LEFT, Image RIGHT on desktop
   Drop-in CSS — no HTML changes needed
   ═══════════════════════════════════════════════════ */

/* ── Section Container ── */
.btmCont {
  padding: 48px 0 60px;
  background: #FFF9F7;
}
@media(min-width:768px) {
  .btmCont { padding: 60px 0 0; }
}

@media(min-width:768px) {

}

/* ── Image — moves to right on desktop ── */
.photo-mobile {
  float: right;
}
@media(min-width:768px) {
  .photo-mobile {
    float:right;
    margin: 0 0 20px 20px;max-width: 400px 
  }
}

.photo-mobile img {
  width: 100%;
  height: auto;
  border-radius: 20px;
  box-shadow: 0 12px 40px rgba(0,0,0,0.06);
}

/* ── Text Content — left side ── */
.btmCont h2 {
  font-family: "Bricolage Grotesque", sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1.12;
    letter-spacing: -0.02em;
    color: rgb(26, 20, 48);
    margin: 0px 0px 18px;
}
@media(min-width:768px) {
  .btmCont h2 { font-size: 26px; }
}

/* Pink accent underline on first h2 */
.btmCont h2:first-of-type {
  position: relative;
  padding-bottom: 16px;
  margin-bottom: 0;
}


/* Sub headings */
.btmCont h2 strong,
.btmCont h2 .utx {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: #1A1025;
  font-style: normal;
}
@media(min-width:768px) {
  .btmCont h2 strong { font-size: 22px; }
}

/* Paragraphs */
.btmCont p,
.btmCont .utx {
      font-size: 16px;
    line-height: 1.7;
    color: rgb(107, 102, 128);
    margin: 0px 0px 16px;
}
@media(min-width:768px) {
  .btmCont p { font-size: 15px; }
}

/* Last paragraph — no bottom margin */
.btmCont .last_para {
  margin-bottom: 16px;
}

/* Remove the <br><br> gap — handled by grid/margins */
.btmCont br {
  display: none;
}
/* ═══════════════════════════════════════════════════
   QuackQuack Cities/Links Section — Gen Z Theme
   Matching screenshot: Other links + State dropdown
   Drop-in CSS — no HTML changes needed
   ═══════════════════════════════════════════════════ */

/* ── Section Container ── */
.cities_list {
  padding: 48px 0 60px;
  background: #FFF9F7;
}
@media(min-width:768px) {
  .cities_list { padding: 60px 0 44px; }
}

/* ═══ OTHER LINKS BLOCK ═══ */
.other_links {
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 16px;
  padding: 28px 24px;
  margin-bottom: 24px;
  position: relative;
}
@media(min-width:768px) {
  .other_links { padding: 36px 32px; }
}

/* Title */
.other_links .mbl_title,
.other_links #oth_btn {
  display: inline-block;
  font-family: 'Bricolage Grotesque', system-ui, -apple-system, sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: #1A1025;
  margin-bottom: 30px;
  font-style: normal;margin-top: -15px
}
@media(min-width:768px) {
  .other_links .mbl_title { font-size: 22px; }
}

/* Links list */
.oth_list {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px 24px;clear: both;
}
@media(min-width:480px) {
  .oth_list { grid-template-columns: repeat(2, 1fr); }
}
@media(min-width:768px) {
  .oth_list { grid-template-columns: repeat(4, 1fr); }
}

.oth_list li {
  padding: 0;
}

.oth_list a,
.oth_list .conts_new {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #000;
  padding: 10px 0;
  transition: color 0.2s, padding-left 0.2s;
  text-decoration: none;
}

.oth_list a:hover,
.oth_list .conts_new:hover {
  color: #FF3366;
}

/* ═══ STATE SELECTOR ═══ */
.states_list,
.states_listnew {
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 16px;
  padding: 28px 24px;
  margin-bottom: 24px;
}
@media(min-width:768px) {
  .states_list { padding: 36px 32px; }
}

/* Position dropdown at top-right on desktop */
@media(min-width:768px) {
  .other_links {
    display: block;
    position: relative;
  }
  .states_list,
  .states_listnew {
    position: absolute;
    top: 28px;
    right: 32px;
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    width: auto;
    min-width: 200px;
  }
}

/* Re-flow for combined layout on desktop */
@media(min-width:768px) {
  .cities_list > .wrapper {
    position: relative;
  }
  .cities_list .other_links {
    
  }
  .cities_list .states_list {
    position: static;
    float: right;
    margin-bottom: 0;
  }
}

/* Title for state selector */
.states_list .mbl_title,
.states_list .mbl_title2 {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #1A1025;
  margin-bottom: 0;
  letter-spacing: 0.04em;
}

/* Select field wrapper */
.select_field {
  position: relative;
  display: block;
}

.sel_opts {
  width: 100%;
  padding: 12px 40px 12px 16px;
  border: 1.5px solid rgb(221, 208, 255);
  border-radius: 12px;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #1A1025;
  background: rgb(239, 233, 255);
  outline: none;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.sel_opts:focus {
  border-color: #FF3366;
  box-shadow: 0 0 0 3px rgba(255,51,102,0.08);
}

/* Custom dropdown arrow */
.seonew_droparw {
  position: absolute;
  top: 40%;
  right: 14px;
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  border-left: 1px solid rgba(0, 0, 0, 0.6);;
  border-bottom: 1px solid rgba(0, 0, 0, 0.6);;
  transform: rotate(315deg);
  pointer-events: none;
}

/* ═══ CATEGORY SELECTOR / SELECT LIST ═══ */
.select_li,
#cityList_btn1 {
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 16px;
  padding: 28px 24px;
  margin-bottom: 24px;
}
@media(min-width:768px) {
  .select_li { padding: 36px 32px; }
}

.sl_title,
.sl_title2 {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 18px;
  font-weight: 800;
  color: #1A1025;
  margin-bottom: 16px;
  cursor: pointer;
}



/* Category title */
.near_txt {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 20px;
  font-weight: 800;
  color:#1A1025;;
  margin-bottom: 12px;
  font-style: normal;
}

/* Cities links grid */
.cities_links {
  display: block;
}

.citiesList {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px 24px;
}
@media(min-width:480px) {
  .citiesList { grid-template-columns: repeat(2, 1fr); }
}
@media(min-width:768px) {
  .citiesList { grid-template-columns: repeat(4, 1fr); }
}

.citiesList li {
  padding: 0;
}

.citiesList a,
.citiesList .conts {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #000;
  padding: 10px 0;
  text-decoration: none;
}

.citiesList a:hover,
.citiesList .conts:hover {
  color: #FF3366;
}

/* ═══ SIGNUP BUTTON (if enabled) ═══ */
.btn_signup,
.btn_signup_last {
  display: block;
  text-align: center;
  margin-top: 32px;
}

.btn_signup .reg_nw {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 40px;
  border-radius: 100px;
  background: #FF3366;
  color: #fff;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.34,1.56,0.64,1);
  box-shadow: 0 4px 20px rgba(255,51,102,0.25);
}

.btn_signup .reg_nw:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(255,51,102,0.35);
}
/* ═══════════════════════════════════════════════════
   QuackQuack Footer — Gen Z Theme
   Drop-in CSS — no HTML changes needed
   Covers: footer_menu, bot_List, footer_btm,
   topcity_block, sub-list, copytxt, social icons
   ═══════════════════════════════════════════════════ */

/* ── Footer Container ── */
.footer {
      background: #fff5f2;
   
    backdrop-filter: blur(4px);
    padding: 64px clamp(16px, 4vw, 28px) 28px;
  color: #fff;
  padding: 0;
}

/* ═══ SOCIAL / FOLLOW US STRIP (from footer_common_content.php) ═══ */
.count_block {
  background: #0D0A1A;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}

.share_block {
  max-width: 1200px;
  margin: 0 auto;
  padding: 32px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}
@media(min-width:768px) {
  .share_block { padding: 36px 40px; }
}

.share_lft {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
}

.mem_number {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: #FF3366;
}

.qqtxt {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: rgba(255,255,255,0.5);
}

.share_ryt { display: flex; align-items: center; }
.cnt_ryt { display: flex; align-items: center; gap: 12px; }

.share_love {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 11px;
  font-weight: 700;
  color: rgba(255,255,255,0.35);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.social_icons {
  display: flex;
  gap: 8px;
}

.media_ico {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.1);
  font-size: 0;
  text-indent: -9999px;
  transition: all 0.25s;
  background-size: 18px;
  background-position: center;
  background-repeat: no-repeat;
}

.media_ico:hover {
  background-color: #FF3366;
  border-color: #FF3366;
  transform: translateY(-2px);
}

/* ═══ MAIN FOOTER MENU ═══ */
.footer_menu {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px 32px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
}
@media(min-width:640px) {
  .footer_menu { grid-template-columns: repeat(2, 1fr); }
}
@media(min-width:768px) {
  .footer_menu { grid-template-columns: repeat(4, 1fr); padding: 48px 40px 36px; }
}

.footer_list {
  text-align: left;
}

.footer_list.txt_center,
.footer_list.txt_ryt {
  text-align: left;
}

/* Column titles */
.title_list {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: rgba(26, 16, 37, 0.6);;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 16px;
  line-height: 1.4;
}

.title_list br { display: none; }

.title_listhelp {
  /* same as title_list, no special override needed */
}

/* Footer links */
.footer_list ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer_list li {
  margin-bottom: 8px;
}

.footer_list a {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 13px;
  font-weight: 400;
  color: rgba(26, 16, 37, 0.6);;
  text-decoration: none;
  display: inline-block;
}

.footer_list a:hover {
  color: #FF3366;
}

/* ═══ BOTTOM LIST (All Cities / Sitemap) ═══ */
.bot_List {
      border-top: 1px solid rgba(0, 0, 0, 0.07);
}

.btmlist {
  max-width: 1200px;
  margin: 0 auto;
  padding: 16px 20px;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
}
@media(min-width:768px) {
  .btmlist { padding: 16px 40px; }
  
}

.btmlist li { }

.btmlist a {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 500;
  color: rgb(107, 102, 128);
  text-decoration: none;
  transition: color 0.2s;
}

.btmlist a:hover {
  color: #FF3366;
}

/* ═══ FOOTER BOTTOM (Copyright + City Dropdowns) ═══ */
.footer_btm {
      border-top: 1px solid rgb(0 0 0 / 6%);
    padding: 24px 0 32px;
    justify-content: space-between;
    width: 100%;
    align-items: center;
}

.footer_btm > .wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
@media(min-width:768px) {
  .footer_btm > .wrapper { padding: 0 40px;display:flex;justify-content:space-between; }
}
.fbtm_left{display:flex;gap: 20px}
.sub-list{
    display: none;
    position: absolute;
    width: 180px;
    left: -40px;
    background: #fff;
    bottom: 36px;
    border-radius: 5px;
    padding: 0;        border: 1px solid #FF3366;border-radius: 20px
}
.topcity_block:hover .sub-list{  display: block;}
.sub-list li{clear:both;padding: 15px 0;padding: 0 0;
    width: 100%;
    text-align: center;}
    .sub-list li:last-child  a{border-radius: 0 0 15px 15px;}
    .sub-list li:first-child a{border-radius: 15px 15px 0 0;}
.sub-list a {
    color: #000;
    display: block;
    text-align: center;
    padding: 10px 0;
}
.topcity_block{position:relative;padding: 10px 0;}
/* Copyright */
.copytxt {
  display: block;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: rgb(107, 102, 128);
  margin-top: 10px;
}

/* ═══ CITY DROPDOWN BLOCKS ═══ */
#btm_ftrLinks {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 32px;
}

/* Dropdown trigger */
.footmob_link {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 0;
}

.date_city {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 13px;
  color: rgb(107, 102, 128);
  text-decoration: none;
  transition: color 0.2s;
}

.date_city:hover {
  color: #FF3366;
}

/* Arrow button */
.arrow_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-style: normal;margin-top: -4px
}

.mob_arr {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid rgba(255,255,255,0.3);
  transition: transform 0.2s;
}


.sub-list a {
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: rgb(107, 102, 128);
  text-decoration: none;
  padding: 7px 0;
  display: block
}

.sub-list a:hover {
  background: #FF3366;
  color: #fff;
}

/* Label items (non-link, like "Top Cities", "Dating By Language") */
.sub-list li:last-child a:not([href]) {
  color: rgba(0,0,0,0.6);
  font-weight: 600;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  cursor: default;
  margin-top: 4px;
}

/* Nested footer link lists (ftr_link2 etc) */
.ftr_link2,
.ftr_link1,
.top_block2 {
  list-style: none;
  padding: 0;
  margin: 0;
}

.ftr_link2 > li {
  /* wrapper li — no special style needed */
}

/* ═══ FAQ SECTION (if present) ═══ */
.faq-item {
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,0.07);
  border-radius: 14px;
  margin-bottom: 10px;
  overflow: hidden;
  transition: border-color 0.3s;
}

.faq-item.active {
  border-color: #FF3366;
}

.faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 22px;
  cursor: pointer;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 15px;
  font-weight: 700;
  color: #1A1025;
  user-select: none;
}

.faq-question::after {
  content: '+';
  font-size: 18px;
  font-weight: 700;
  color: #FF3366;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255,51,102,0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.3s cubic-bezier(0.34,1.56,0.64,1);
}

.faq-item.active .faq-question::after {
  content: '×';
  background: #FF3366;
  color: #fff;
  transform: rotate(90deg);
}

.faq-answer {
  display: none;
  padding: 0 22px 18px;
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 14px;
  color: rgba(26,16,37,0.6);
  line-height: 1.7;
}

.faq-item.active .faq-answer {
  display: block;
  animation: faqFadeIn 0.3s cubic-bezier(0.16,1,0.3,1);
}

@keyframes faqFadeIn {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}
/* ═══════════════════════════════════════════════════
   QuackQuack Stats Strip (block3) — Gen Z Theme
   Desktop: continuous horizontal scroll ticker
   Mobile: static 2-row grid (3 per row)
   Drop-in CSS — no HTML changes needed
   ═══════════════════════════════════════════════════ */

/* ── Container ── */
.block3 {
  position: relative;
  padding: 0;
  overflow: hidden;
}

.block3_bg {
  position: absolute;
  inset: 0;
  background: #FFFFFF;
  border-top: 1px solid rgba(0,0,0,0.07);
  border-bottom: 1px solid rgba(0,0,0,0.07);
}

.block3 .wrapper {
  position: relative;
  z-index: 1;
  padding: 0;
  max-width: 100%;
}

/* ═══ DESKTOP: Continuous horizontal scroll ═══ */
@media(min-width:768px) {
  .block3 {
    padding: 36px 0;
  }

  .block3_cont {
    display: flex;
    animation: statsTickerScroll 22s linear infinite;
    width: max-content;
    will-change: transform;
  }

  @keyframes statsTickerScroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }

  .txt_list {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 40px;
    white-space: nowrap;
    flex-shrink: 0;
    position: relative;
  }

  /* Dot separator between items */
  .txt_list::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: rgba(0,0,0,0.1);
  }

  .txt_list strong {
       font-family: "Bricolage Grotesque", sans-serif;
    font-weight: 800;
    font-size: 28px;
    color: rgb(240, 49, 108);
    line-height: 1;
  }

  

  .txt_list small {
        font-family: "Bricolage Grotesque", sans-serif;
    font-weight: 600;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgb(154, 149, 171);
    margin-top: 7px;
    line-height: 1.3;
  }
}

/* ═══ MOBILE: Static 2-row grid (3 per row) ═══ */
@media(max-width:767px) {
  .block3 {
    padding: 28px 0;
  }

  .block3 .wrapper {
    padding: 0 20px;
  }

  .block3_cont {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px 12px;
    max-width: 420px;
    margin: 0 auto;
  }

  .txt_list {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .txt_list strong {
    font-family: 'Bricolage Grotesque', system-ui, sans-serif;
    font-size: 22px;
    font-weight: 800;
    color: #FF3366;
    letter-spacing: -0.03em;
    line-height: 1;
    margin-bottom: 2px;
  }

  .txt_list small {
    font-family: 'Bricolage Grotesque', system-ui, sans-serif;
    font-size: 10px;
    font-weight: 600;
    color: rgba(26,16,37,0.35);
    text-transform: uppercase;
    letter-spacing: 0.03em;
  }
.footer_menu {
    grid-template-columns: 1fr 1fr;
}
.near_txt{padding-top: 15px;}
}
.f-socials {
    display: flex;
    gap: 8px;align-items: center;justify-content: center;margin-top: 0
}

.f-socials a {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(0,0,0,0.05);
    border: 1px solid rgba(0, 0, 0, 0.07);
    color:rgba(26, 16, 37, 0.6);
    text-decoration: none;
    font-size: 13px;
    transition: all .25s
}
.footer-desc {
    font-size: 13px;
    color: rgba(26, 16, 37, 0.6);
    line-height: 1.6;
    margin-top: 12px;
    max-width: 260px;
}
.f-socials a:hover {
    background: #ff3366;
    color: #fff;
    border-color: #ff3366
}
.mbl_title2,.des_title{display:none;}
.arrow_btn{
      width: 7px;
    height: 7px;
    border-left: 1px solid rgba(0, 0, 0, 0.6);
    border-bottom: 1px solid rgba(0, 0, 0, 0.6);
    transform: rotate(315deg);
}
.photo-mobile-img{display: block;margin:0 auto;float:none;margin-top: 50px}
.cnt_text p{margin-top: 10px;}
@media(max-width:768px) {
  .mob_hide,.states_list .mob_hide{display: none;}
  .topcity_block {
    /* min-width: 180px; */
    width: 100%;
    padding: 15px 0 15px 20px;
    border-bottom: 0.5px solid #ccc;
}
.footer_btm{border:None;padding: 15px 0}
.photo-mobile-img{padding: 0 15px}
  .logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    width: 150px;
}
  .logo img {
    height: auto;
    width: auto;
}
.btmCont .wrapper{padding: 0;}.btmCont h2{font-size: 25px}.btmCont h2:first-of-type{margin-bottom:0}
.btmCont{padding: 32px 15px 0;}
.cnt_text{padding: 0 15px}
.btmCont .cnt_text{padding: 0;}
.banner{padding: 32px 0 15px}.qq-trust-bar{padding: 32px 0 0}
.qq-trust-grid{padding: 0 20px;}.profiles_main h3{font-size: 25px}.profiles_main{padding: 32px 0}
.des_title{display: block;}
    .des_title {
        display: block;
        width: 100%;
        background: rgb(239, 233, 255);
        padding: 10px;
        border-radius: 10px;
        border: 1.5px solid rgb(221, 208, 255);
        font-size: 14px;
        font-weight: 600;margin: 0;
    }
    .sl_title .mob_arr {
    display: inline-block;
    top: 37%;
    right: 14px;
    transform: translateY(-50%);
    width: 7px;
    height: 7px;
    border:none;
    border-left: 1px solid rgba(0, 0, 0, 0.6);
    border-bottom: 1px solid rgba(0, 0, 0, 0.6);
    margin-left: 8px;
    vertical-align: middle; 
    transition: transform 0.2s;
    float: right;
        margin: 5px 0 0 0;
        transform: rotate(-45deg);
}
.navigation {
    position: fixed;
    top: 0;
    height: 100vh;
    width: 80%;
    max-width: 320px;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    padding: 80px 24px 32px;
    background: #FFF9F7;
    box-shadow: -8px 0 40px rgba(0,0,0,0.18);
    right: -100%;
    transition: right 0.3s ease;
    overflow-y: auto;
    z-index: 200;
  }
  .navigation.open { right: 0; }

  /* Reveal the menu links inside the panel (override the ≤840px hide) */
  .navigation .menu {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    width: 100%;
  }
  .navigation .menu li a { display: block; font-size: 16px; padding: 12px 16px; }

  /* Stack the login / signup buttons full width inside the panel */
  .navigation .qq-nav-actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    margin-top: 20px;
  }
  .navigation .qq-nav-actions .qq-btn-login,
  .navigation .qq-nav-actions .qq-btn-signup {
    display: block !important;
    width: 100%;
    text-align: center;
  }

  /* Close (X) icon */
  .navigation .hideicon {
    display: block;
    position: absolute;
    top: 24px;
    right: 24px;
    width: 24px;
    height: 24px;
    cursor: pointer;
  }
  .navigation .hideicon .hicon_cross,
  .navigation .hideicon .hicon_cross2 {
    position: absolute;
    top: 11px;
    left: 0;
    width: 24px;
    height: 2px;
    background: #1A1025;
    border-radius: 2px;
  }
  .navigation .hideicon .hicon_cross { transform: rotate(45deg); }
  .navigation .hideicon .hicon_cross2 { transform: rotate(-45deg); }

  /* Dark backdrop behind the panel */
 .transparent_menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,0.45);
    z-index: -1;
  }
    .navigation .nav_block{
        background: #fff;
    position: fixed;
    display:none;
    right: 0;
    width: 80%;
    top: 0;
    height: 100vh;
    padding: 0 15px;
    box-sizing: border-box;padding-top: 40px;
  }
  .navigation.open .nav_block{display:block;}.profiles_main h3{font-size: 25px}
  .block3_cont .stat-clone { display: none !important; }  .cities_list{padding:0}
  .bot_List {
      border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}
.copytxt{margin-top: 0;}
.footer_btm > .wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.sub-list{left: inherit;right: 10px;width: 92%}.arrow_btn{margin: 0 22px 0 0}.footmob_link{justify-content: space-between;}#btm_ftrLinks{gap:0}
.sub-list a{padding: 10px 0}.title_list{margin-bottom: 10px;}
.padd10{padding-top: 20px}
}
html{overflow-x:hidden;}
*{-webkit-tap-highlight-color: rgba(0,0,0,0);} 
  