 @import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Manrope:wght@200..800&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');


:root{
    --maroon:#8B1A4A;
    --maroon-dark:#5c0f29;
    --gold:#c99a3f;
    --cream:#FCFAF8;
    --ink:#2b1b20;
    --muted:#8a7a7e;
  }
  body{
    font-family:'Inter',sans-serif;
    color:var(--ink);
    background:#fff;
  }
  h1,h2,h3,.font-display{
    /*font-family:'Playfair Display',serif;*/
      font-family: "EB Garamond", serif;
              font-size: 38px !important;
      margin-bottom: 20px !important;
  }
  .btn-maroon{
    background:var(--maroon);
    border-color:var(--maroon);
    color:#fff;
  }
  .btn-maroon:hover{
    background:var(--maroon-dark);
    border-color:var(--maroon-dark);
    color:#fff;
  }
  .btn-outline-maroon{
    border:1px solid var(--maroon);
    color:var(--maroon);
    background:transparent;
  }
  .btn-outline-maroon:hover{
    background:var(--maroon);
    color:#fff;
  }
  .btn-gold{
    background:var(--gold);
    border-color:var(--gold);
    color:#3a2a10;
    font-weight:600;
    padding: 10px 32px;
    color: #5C0E2F;
font-family: Manrope;
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: normal;
  }
  .btn-gold:hover{
    background:#b5872f;
    color:#3a2a10;
  }
  .text-maroon{color:var(--maroon);}
  .text-gold{color:var(--gold);}
  .bg-maroon{background:var(--maroon);}
  .bg-cream{background:var(--cream);}
  a{text-decoration:none;}

  /* Navbar */
  .navbar-brand-icon{
    width:38px;height:38px;border-radius:50%;
    background:var(--maroon);
    display:flex;align-items:center;justify-content:center;
    color:#fff;
  }
  .nav-link-custom{
    color: #1E1219;
font-family: Manrope;
font-size: 14px;
font-style: normal;
font-weight: 600;
line-height: normal;
  }
  .nav-link-custom:hover{color:var(--maroon);}

  /* Hero */
 .hero-wrap {
    display: flex;
    flex-wrap: wrap;
    height: 70vh;
}
  .hero-image-col{
    flex:1 1 50%;
    min-height:460px;
    /*
    background:linear-gradient(180deg,rgba(20,10,15,.15),rgba(20,10,15,.55)),
      url('https://images.unsplash.com/photo-1583939003579-730e3918a45a?q=80&w=1400&auto=format&fit=crop') center/cover no-repeat;
      */
    display:flex;
    align-items:flex-end;
    color:#fff;
    padding:2.5rem;
  }
  .hero-form-col{
    flex:1 1 50%;
    /*background:#fdf9f2;*/
    display:flex;
    align-items:center;
    justify-content:center;
    padding:2.5rem 2rem;
  }
  .hero-badge{
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    background:rgba(255,255,255,.15);
    backdrop-filter:blur(4px);
    padding:.4rem 1rem;
    border-radius:30px;
    font-size:.85rem;
    margin-bottom:1rem;
  }
  .find-match-card{
    background:#fff;
    border-radius:14px;
    box-shadow:0 20px 45px rgba(90,15,41,.15);
    padding:2rem;
    width:100%;
    max-width:420px;
  }
  .toggle-group{
    display:flex;
    border-radius:8px;
    overflow:hidden;
    border:1px solid #e5d9c8;
  }
  .toggle-group .toggle-btn{
    flex:1;
    padding:.6rem;
    text-align:center;
    font-weight:500;
    font-size:.9rem;
    background:#fff;
    color:var(--ink);
    border:none;
    cursor:pointer;
  }
  .toggle-group .toggle-btn.active{
    background:var(--maroon);
    color:#fff;
  }
  .form-label-sm{
    font-size:.75rem;
    letter-spacing:.03em;
    color:var(--muted);
    margin-bottom:.3rem;
    display:block;
  }
.find-match-card p {
    font-size: 12px !important;
}
  /* Search strip */
  .search-strip{
    background:var(--maroon);
  }
  .search-strip .form-select,
  .search-strip .form-control{
        background: rgba(255, 255, 255, 0.10);
    border:0px solid rgba(255,255,255,.25);
    color:#fff;
    font-size:12px;
          padding: 10px 32px;
  }
  .search-strip .form-select option{color:#000;}
  /* keep white text in the maroon search strip while focused */
  .search-strip .form-control:focus,
  .search-strip .form-select:focus{
    color:#fff;
    background: rgba(255, 255, 255, 0.10);
  }
  .search-strip label{
    color:rgba(255,255,255,.75);
    font-size:.72rem;
    margin-bottom:.15rem;
  }
  .search-strip .form-select::placeholder,
  .search-strip .form-control::placeholder{color:rgba(255,255,255,.65);}

  /* Section titles */
  .eyebrow {
    color: var(--maroon);
    font-weight: 600;
    font-size: .8rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

  /* Profile cards */
  .profile-card{
    border:1px solid #efe6da;
    border-radius:12px;
    overflow:hidden;
    background:#fff;
    height:100%;
    transition:box-shadow .2s ease, transform .2s ease;
  }
  .profile-card:hover{
    box-shadow:0 12px 30px rgba(90,15,41,.12);
    transform:translateY(-3px);
  }
  .profile-card img{
    width:100%;
    height:210px;
    object-fit:cover;
  }


button.btn.btn-maroon.rounded-pill.px-3.flex-grow-1.flex-lg-grow-0 {
    min-width: 110px;
}
.hero-half {
    position: absolute;
    width: 50%;
    height: 100%;
}
.leftbg.hero-half {
    left: 0;
    background: url(../images/hero-left-art.png);
    background-repeat: no-repeat;
    z-index: -1;
}
.rightbg.hero-half {
    right: 0;
    left: 50%;
    background: url(../images/hero-right-form.png);
         background-repeat: no-repeat;
    object-fit: cover;
    z-index: -1;
}
button.btn.btn-maroon.w-100.btn-sm.rounded-2 {
    padding: 5px;
}
.profile-card h6 {
    font-size: 18px !important;
    font-family: "EB Garamond", serif;
    margin-bottom: 10px !important;
}

.profile-card .card-body p:nth-child(2) {
    font-size: 12px;
    color: #1E1219 !important;
    margin-bottom: .2rem;
}
.profile-card .card-body p:nth-child(1) {
    color: #6B5861 !important;
     font-size: 13px;
}
input.form-control.border-start-0.bg-light {
    border-radius: 0px 20px 20px 0px;
}
span.input-group-text.bg-light.border-end-0 {
    border-radius: 20px 0px 0px 20px !important;
}
.form-control:focus {
    color: #1E1219;   /* typed text stays dark & readable while focused (was #dee2e6) */
    background-color: var(--bs-body-bg);
    border-color: inherit;
    outline: 0;
    box-shadow: none;
}
section.search-strip .row .col-6 {
    display: flex;
    /* label above the dropdown so the full option text fits (was side by side → text was cut) */
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
}
/* Search strip dropdowns: smaller side padding so texts like "Bride & Groom" / "Any Qualification"
   are shown in full; very long values end with "…" instead of being cut */
section.search-strip .row .col-6 .form-select {
    width: 100%;
    min-width: 0;
    padding: 10px 28px 10px 12px;
    background-position: right 8px center;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
section.search-strip .row .col-6 label {
    color: #C5A059;
    font-family: Manrope;
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    white-space: nowrap;
}


  @media (min-width:1200px){
    .profile-card img{height:190px;}
    .profile-card .card-body{padding:1rem !important;}
  }
  .profile-card .badge-premium{
    background:var(--gold);
    color:#8B1A4A;
    font-size:.65rem;
    font-weight:700;
    padding:.25em .5em;
          background: rgba(139, 26, 74, 0.06);
  }
  .profile-card .fav-icon{
    position:absolute;
    top:10px;right:10px;
    background:rgba(255,255,255,.85);
    width:30px;height:30px;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    color:var(--maroon);
  }
  .profile-card .card-body p{
    font-size:.82rem;
    color:var(--muted);
    margin-bottom:.2rem;
  }
  .profile-card .location{
    font-size:.8rem;
    color:var(--maroon);
  }
.story-card a {
    color: #8B1A4A;
    font-family: Manrope;
    font-size: 13px !important;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
  /* Story cards */
  .story-card{
    border-radius:12px;
    overflow:hidden;
    background:#fff;
    border:1px solid #eee;
    height:100%;
  }
  .story-card img{
    width:100%;
    height:250px;
    object-fit:cover;
  }
 .story-card blockquote {
    font-size: 13px;
    color: var(--muted);
    font-style: normal;
}

  /* Premium banner */
  .premium-feature-box{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.15);
    border-radius:10px;
    padding:1.1rem 1.2rem;
  }
  .premium-feature-box .icon-circle {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #fff;
    color: #C5A059;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

  /* About */
  .about-badge-img{
    width:110px;height:110px;
    border-radius:50%;
    object-fit:cover;
    border:0px solid #fff;
    /*box-shadow:0 8px 20px rgba(0,0,0,.15);*/
  }
  .about-caption{
    background:#fff;
    padding:.4rem .9rem;
    border-radius:20px;
    font-size:12px;
    font-weight:600;
    /*box-shadow:0 4px 10px rgba(0,0,0,.1);*/
    display:inline-flex;
    align-items:center;
    gap:.4rem;
    position:relative;
    top:-14px;
    width: 100% !important;
    justify-content: center;
    
  }
  .check-list li{
    margin-bottom:.6rem;
    display:flex;
    align-items:flex-start;
    gap:.6rem;
    color: #1E1219;
font-family: Manrope;
font-size: 15px;
font-style: normal;
font-weight: 600;
line-height: normal;
  }
  .check-list i{color:var(--maroon);margin-top:.25rem;}

  /* FAQ */
  .accordion-button{
    font-weight:600;
    color:var(--ink);
  }
  .accordion-button:not(.collapsed){
    color:var(--maroon);
    background:#fdf6ea;
  }
  .accordion-button:focus{box-shadow:none;}

  /* Footer */
  footer{background: #13080E;
    color:#cbbcc0;}
  footer h6{color:#fff;font-weight:600;margin-bottom:1rem;}
  footer a{color:#cbbcc0;font-size:.9rem;}
  footer a:hover{color:var(--gold);}
  .support-pill {
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 30px;
    /* padding: 0.45rem 1rem; */
    font-size: 13px;
    color: #fff;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
    border-radius: 8px;
    background: #2D1620;
    padding: 12px 20px;
}
a.support-pill i {
    color: #C5A059;
}
  /* Profile grid: 1 / 2 / 3 / 5 columns across breakpoints */
  .col-profile{
    flex:0 0 100%;
    max-width:100%;
  }
.story-card h6 {
    font-size: 18px !important;
    font-family: "EB Garamond", serif;
  margin-bottom: 15px !important;
}
.premium-feature-box h6 {
    color: #C5A059;
    font-family: "Cormorant Garamond";
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}
.premium-feature-box p {
    color: #FFF;
font-size: 14px !important;
font-style: normal;
font-weight: 300; /* 21px */
}
.perfect-match .text-center {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 20px;
    border-radius: 20px;
    background: #FFF;
    box-shadow: 0 16px 32px 0 rgba(139, 26, 74, 0.07);
    max-width: 190px;
    min-width: 190px;
    width: 46%;
    justify-content: center;
    align-items: center;
}
.perfect-match .about-caption {
     top: inherit; 
}
.d-flex.flex-wrap.gap-4.justify-content-center.justify-content-lg-start.align-items-start.perfect-match {
    flex-wrap: wrap !important;
    gap: 40px !important;
    justify-content: center !important;
}
#about p.text-muted.mb-4 {
    color: #6B5861;
    font-family: Manrope;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 170%;
    margin-bottom: 40px !important;
}
#about button.btn.btn-maroon.rounded-2.px-4.py-2 {
    border-radius: 30px !important;
    background: #8B1A4A;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    padding: 14px 32px !important;
    margin-top: 15px;
}
#about, #premium{
      padding-top: 6rem !important;
    padding-bottom: 6rem !important;
}
#premium button.btn.btn-gold.rounded-2.px-4.py-2 {
    padding: 12px 36px !important;
    color: #5C0E2F;
    font-family: Manrope;
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    border-radius: 30px !important;
    margin-top: 20px;
}
section#premium p {
    color: #FFF;
    font-family: Manrope;
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 160%;
  padding-right: 30px;
}
img.brandlogo {
    width: 180px;
}
nav.navbar.navbar-expand-lg.bg-white.sticky-top.border-bottom.py-3 button {
    font-size: 14px !important;
    line-height: au;
}
button.accordion-button {
    color: #1E1219;
    font-family: "Cormorant Garamond";
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
.accordion-body {
    color: #6B5861;
    font-family: Manrope;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
}
footer .fw-bold.text-white {
    color: #C5A059 !important;
    font-family: Manrope;
    font-size: 13px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
}

.taglinesolmate {
    color: #FFF;
    font-family: "Cormorant Garamond";
    font-size: 22px !important;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-top: 7px;
}
footer h6 {
    color:#C5A059 !important;
    font-size: 20px !important;
      font-family: "Cormorant Garamond";
}
footer ul li a {
    color: #FFF;
    font-family: Manrope;
    font-size: 12px !important;
    font-style: normal;
    font-weight: 100;
    line-height: normal;
}
footer .col-12.col-lg-4 p {
   color: #FFF;
    font-family: Manrope;
    font-size: 12px !important;
    font-style: normal;
    font-weight: 100;
    line-height: normal;
}
.store {
    padding: 8px 30px;
    margin-right: 10px;
    margin-top: 15px;
}
.container.py-4.border-bottom.border-secondary-subtle {
    border-bottom: 1px solid #2D1620 !important;
}
.last-bar {
    background: #2D1620;
    padding: 20px 0px !important;
    color: #FFF;
    font-family: Manrope;
    font-size: 12px !important;
    font-style: normal;
    font-weight: 100;
    line-height: normal;
  border: 0 !important;
}
.banner-content h1 {
    font-size: 50px !important;
}
.banner-content p {
    font-size: 16px !important;
    font-weight: 100;
}
img.watermark {
    width: 30px;
    height: 30px;
    position: absolute;
    top: 10px;
    right: 10px;
}

img.p-icons {
    width: 22px;
    height: 22px;
}
.watermark_logo {
    /* background: #000; */
    color: #fff;
    padding: 6px;
    text-align: center;
    position: absolute;
    width: 160%;
    text-transform: uppercase;
    transform: rotate(327deg);
    top: 80px;
    right: -60px;
    font-size: 20px;
    opacity: .3;
}













  @media (min-width:576px){
    .col-profile{flex:0 0 50%;max-width:50%;}
  }
  @media (min-width:768px){
    .col-profile{flex:0 0 33.3333%;max-width:33.3333%;}
     }

  .hero-half {
    position: absolute;
    width: 50%;
    height: 100%;
}    
      
      
      
      
  }
  

  @media (max-width:991.98px){
    .hero-image-col, .hero-form-col{flex:1 1 100%;}
    .hero-image-col{min-height:340px;}
  }
  @media (max-width:767.98px){
     .hero-half {
    width: 100%;
}  
    .hero-image-col{min-height:280px;padding:1.5rem;}
    .hero-image-col h1{font-size:1.9rem;}
    .hero-form-col{padding:2rem 1.25rem;}
    .find-match-card{padding:1.5rem 1.25rem;}
    .premium-feature-box{padding:1rem;}
  }
  @media (max-width:575.98px){
    .hero-image-col h1{font-size:1.6rem;}
    .hero-badge{font-size:.78rem;padding:.35rem .8rem;}
    .search-strip label{font-size:.68rem;}
    .about-badge-img{width:90px;height:90px;}
    .support-pill{font-size:.75rem;padding:.4rem .75rem;}
    footer .container.py-4 .d-flex.flex-wrap{justify-content:center !important;text-align:center;}
  }
@media (min-width:1200px){
    .col-profile{flex:0 0 20%;max-width:20%;}
  }
  img{max-width:100%;height:auto;}
  .table-responsive-wrap{overflow-x:auto;}

@media (max-width:768px){

.rightbg.hero-half {
    display: none;
} 
    .hero-image-col h1 {
        font-size: 20px;
    }
    .hero-image-col h1 {
        font-size: 24px !important;
    }
  .row.h-100.layout-flx {
    flex-direction: column;
    flex-wrap: nowrap;
}
     section.search-strip .row .col-6 {
        flex-direction: column;
        gap: 0px;
        align-items: start;
    }
  
  .watermark_logo {
    top: 80px;
    right: -110px;
}
  .find-match-card h3 {
    font-size: 25px !important;
}
  .hero-wrap {
    height: 80vh;
}
  
}




