.promo-block {
  margin-top: 80px; /* add extra space above the promo card */
}

/* Navbar hide on scroll */
.navbar {
  transition: transform 0.3s ease;
  background-color: #ffffff !important; /* remove transparency */
  box-shadow: 0 1px 0 rgba(0,0,0,0.05); /* subtle bottom line for separation */
  position:fixed!important;
  left:0;
  right:0;
  top:0;
  transform:none!important;
  z-index:1000;
}
.navbar.is-hidden{transform:none!important;opacity:1!important;pointer-events:auto!important;}

.w-nav-button {
  display: none;
}

@media screen and (max-width: 991px) {
  .w-nav-button {
    display: block;
  }
}

.nav-user {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  position: relative;
}
.nav-user-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: transparent;
  object-fit: cover;
  border: none;
}
.nav-user-name {
  font-weight: 600;
  color: #333;
  font-size: 14px;
}
.nav-caret {
  font-size: 10px;
  margin-left: 4px;
  transition: transform 0.2s ease;
}
.nav-user.open .nav-caret {
  transform: rotate(180deg);
}

.header-wrapper {
  display: flex;
  align-items: center;
}

.create-form-container {
  margin-top: 120px;
}

/* Logo sizing and alignment */
.brand {
  display: flex;
  align-items: center;
  padding: 10px 0;
}

.brand img,
.footer-wedget.is-newslatter > a > img,
.footer-wedget > a > img {
  height: 40px!important;
  width: auto!important;
}

/* Nav user dropdown */
.nav-user-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,.1);
  min-width: 140px;
  z-index: 100;
  display: none;
  flex-direction: column;
}
.nav-user-menu a {
  padding: 10px 16px;
  font-size: 14px;
  color: #333;
  text-decoration: none;
}
.nav-user-menu a:hover {
  background: #f5f5ff;
}
.nav-user.open .nav-user-menu {
  display: flex;
}

/* hide nav button hover effect bubble */
.navbar .button-hover-effect{display:none!important;}

.grade-pill.small{width:32px;height:24px;font-size:13px;}
.grade-S{background:#4caf50;color:#fff;}
.grade-A{background:#66bb6a;color:#fff;}
.grade-B{background:#ffc107;color:#fff;}
.grade-C{background:#ff9800;color:#fff;}
.grade-D{background:#f44336;color:#fff;}

/* --- Enhanced Review Card Styles --- */
.review-card-new{border:1px solid #e5e6ea;border-radius:12px;padding:24px;margin-bottom:32px;box-shadow:0 2px 6px rgba(0,0,0,.04);display:flex;gap:24px;background:#fff;}
.review-details{flex:1;}
.review-meta{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#888;margin-bottom:8px;}
.review-meta .meta-right{font-weight:500;}
.review-comment{margin:12px 0 20px;font-size:15px;line-height:1.5;color:#333;}
.review-aspects{display:grid;grid-template-columns:repeat(2,1fr);row-gap:10px;column-gap:40px;font-size:14px;}
/* --- Grade pills --- */
.grade-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;min-width:40px;height:26px;font-weight:600;font-size:14px;color:#666;border:1px solid #ccc;background:#fafafa;box-shadow:0 1px 2px rgba(0,0,0,.05);}
.grade-pill.small{min-width:32px;height:22px;font-size:13px;}
.grade-S{background:#2e7d32;} /* dark green */
.grade-A{background:#4caf50;}
.grade-B{background:#ffc107;color:#333;}
.grade-C{background:#ff9800;}
.grade-D{background:#f44336;}
.grade-pill:hover{filter:brightness(1.1);}
/* --- Show more button & loader --- */
.show-more-btn{background:#6659df;color:#fff;border:none;border-radius:24px;padding:10px 28px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;}
.show-more-btn:disabled{opacity:.5;cursor:not-allowed;}
.loader{width:16px;height:16px;border:2px solid #fff;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}

.view-all-link{font-size:14px;font-weight:500;color:#6659df;text-decoration:none;margin-left:auto;}
.view-all-link:hover{text-decoration:underline;}

.view-all-btn{background:#6659df;color:#fff;border:none;border-radius:8px;padding:8px 20px;font-weight:600;font-size:14px;cursor:pointer;transition:background .2s;display:inline-block;margin-top:12px;}
.view-all-btn:hover{background:#5346d3;}

/* Push main content below fixed navbar */
.header + .breadcrumb,
.header + .main,
.header + section,
.header + div.main {
  margin-top: 80px;
}

/* Reduce excessive padding on breadcrumb sections */
.breadcrumb {
    padding-top: 40px;
    padding-bottom: 20px;
}

/* Reduce excessive padding on contact section */
.section.contact {
    padding-top: 20px;
}

/* Make contact form card larger */
.contact-card.is-right {
  max-width: 800px; /* Increased from default */
  padding: 40px; /* Increased padding */
  margin: 0 auto; /* Center the card */
}

.contact-grid {
  display: block; /* Override grid to allow centering */
}

/* Increase height of contact form card */
.text-field.is-message-field {
  min-height: 180px; /* Increase textarea height */
  resize: none; /* Disable resizing */
}

.form-grid .input-block {
  margin-bottom: 20px; /* Add space between form elements */
}

/* ------------------ Spacing Fixes ------------------ */
/* Reduce excessive top spacing introduced in Webflow export */
.section.hero {
  padding-top: 140px !important; /* default was 220px */
}
/* Search results first section */
.section.is-serch-result {
  padding-top: 40px !important;
}
/* Generic first section on detail pages (investor/agency) */
.section:first-of-type:not(.hero):not(.is-serch-result) {
  padding-top: 40px !important;
}

/* ------------------ Navbar background fix ------------------ */
.header {
  z-index: 1000 !important; /* ensure header sits above content */
}

/* ---- Create Investor Card Form ---- */
.form-card{
  background:#fff;
  border:1px solid #e5e6ea;
  border-radius:12px;
  padding:32px;
  box-shadow:0 2px 8px rgba(0,0,0,.05);
  text-align:left;
}
.card-form .input-block{margin-bottom:24px;position:relative;}
.card-form .field-label{font-weight:600;margin-bottom:8px;display:block;}
.required{color:#f44336;}
.text-field,.select-field{width:100%;padding:10px 12px;border:1px solid #ccc;border-radius:6px;font-size:15px;}

/* Autocomplete list */
.autocomplete-list{list-style:none;margin:0;padding:0;border:1px solid #e0e0e0;border-top:none;max-height:180px;overflow-y:auto;display:none;position:absolute;width:100%;background:#fff;z-index:20;}
.autocomplete-list li{padding:8px 12px;cursor:pointer;}
.autocomplete-list li:hover,.autocomplete-list li.active{background:#f5f5ff;}
.autocomplete-list .no-result{color:#999;cursor:default;}

/* Chips */
.chips-container{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;}
.chip{padding:6px 12px;border:1px solid #b9b9ff;border-radius:16px;background:#f5f5ff;font-size:14px;cursor:pointer;user-select:none;transition:all .2s;display:inline-flex;align-items:center;}
.chip.selected{background:#6659df;color:#fff;border-color:#6659df;}
.chip .chip-remove{margin-left:8px;cursor:pointer;font-weight:bold;font-size:16px;line-height:1;}
.chip .chip-remove:hover{color:#ffcdd2;}

/* Space between chips and input field */
#sector-input{margin-top:4px;}

/* Terms checkbox */
.checkbox-wrap{
  display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height:1.4;color:#333;
}
.checkbox-wrap input{margin-top:3px;}
.checkbox-label a{color:#6659df;text-decoration:none;}
.checkbox-label a:hover{text-decoration:underline;}

/* spacing for terms block */
.terms-block{margin-top:12px;}

/* Name flex */
.name-flex{display:flex;gap:12px;}
.name-flex .text-field{flex:1;}

/* Error handling */
.error-msg{color:#f44336;font-size:12px;margin-top:4px;display:none;}
.input-error{border-color:#f44336!important;}

/* ------ Modal styles ------ */
.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:2000;}
.modal-box{background:#fff;border-radius:12px;max-width:360px;width:90%;padding:24px;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,.15);}
.modal-box h3{font-size:18px;margin-bottom:20px;color:#333;}
.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;}
.modal-actions .modal-btn{flex:1;padding:10px 0;border:none;border-radius:6px;font-weight:600;cursor:pointer;}
.modal-primary{background:#6659df;color:#fff;}
.modal-secondary{background:#f0f0f0;color:#333;}

.radio-flex {
  display: flex;
  gap: 16px;
  align-items: center;
}

/* --- Footer Social Icon Sizing --- */
.social-link .social-icon {
  width: 24px;
  height: 24px;
  transition: transform 0.2s ease;
}

.social-link:hover .social-icon {
  transform: scale(1.15);
}

.social-link .social-icon[src*="facebook-icon"] {
  width: 55px !important;
  height: 55px !important;
}

/* Alternative selector for Facebook icon */
img[src*="facebook-icon"].social-icon {
  width: 55px !important;
  height: 55px !important;
}

.social-icon[src*="youtube-icon"] {
  width: 22px;
  height: 22px;
}

/* ------------------ Not-Found Card ------------------ */
.investor-detail-card {
  background: #ffffff;
  padding: 32px;
  border-radius: 16px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  margin: 40px 0;
}
.investor-detail-card h1 {
  font-size: 48px;
  font-weight: 700;
  margin: 0 0 8px;
}
.investor-detail-card p {
  margin: 0;
  font-size: 18px;
  color: #666;
}