/*
Theme Name: The Idea Crowd
Theme URI: https://theideacrowd.co.uk
Author: The Idea Crowd
Description: The custom theme of The Idea Crowd offical website.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: theideacrowd
*/

/* === Base Styles === */
html {
  height: 100%;
  background-color: #101a20;
  scroll-behavior: smooth;
}

body {
  font-family: "Space Grotesk", sans-serif;
  background-color: #fff;
  color: #333;
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
  scroll-snap-type: y mandatory;
}

h1,
h2,
h3,
h4 {
  font-weight: 600;
  color: #101a20;
}

p,
li {
  font-size: 1.05rem;
  line-height: 1.6;
}

/* === Navbar === */

header .logo img {
  height: 50px; /* adjust this */
  width: auto; /* maintain aspect ratio */
  transition: height 0.3s ease;
}

body.scrolled header .logo img {
  height: 35px; /* smaller when scrolled */
}

.navbar {
  background-color: #000b18 !important;
}

.navbar .menu-item {
  margin: 10px auto;
}

.navbar .nav-link,
.navbar .menu-item a {
  color: #e7f2f7 !important;
  font-weight: 500;
  transition: color 0.3s ease;
  text-decoration: none;
}

.navbar .nav-link:hover,
.navbar .nav-link.router-link-active,
.navbar .menu-item a:hover,
.navbar .menu-item a.router-link-active {
  color: #fff !important;
}

.navbar-toggler {
  border: none;
  background-color: transparent;
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba%28231,242,247,0.9%29' stroke-width='2' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

/* Always show burger icon */
@media (min-width: 992px) {
  .navbar-expand-lg .navbar-toggler {
    display: block;
  }
  .navbar-expand-lg .navbar-collapse {
    display: none !important;
  }
}

/* === Buttons === */
.btn-primary {
  background-color: #101a20;
  border-color: #101a20;
  color: #fff;
  transition: all 0.3s ease;
}

.btn-primary:hover {
  background-color: #333;
  border-color: #333;
}

.btn-outline-primary {
  color: #101a20;
  border-color: #101a20;
  transition: all 0.3s ease;
}

.btn-outline-primary:hover {
  background-color: #101a20;
  color: #fff;
}

/* === Sections === */
.container {
  max-width: 800px;
}

section {
  background-color: #fff;
  border-radius: 10px;
  padding: 2rem;
  margin-bottom: 2rem;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}

section:nth-child(even) {
  background-color: #e7f2f7;
}

/* === Footer (Optional if added later) === */
footer {
  background-color: #101a20;
  color: #e7f2f7;
  text-align: center;
  padding: 1.5rem 0;
  margin-top: 3rem;
  font-size: 0.9rem;
}

/* === Animations === */
.router-view {
  transition: opacity 0.3s ease;
}

/* =====================
   HERO SECTION
   ===================== */
.hero {
  position: relative;
  height: 100vh !important;
  background-color: #101a20;
  background-image: linear-gradient(
    45deg,
    rgba(0, 155, 217, 0.05) 25%,
    transparent 25%,
    transparent 50%,
    rgba(0, 155, 217, 0.05) 50%,
    rgba(0, 155, 217, 0.05) 75%,
    transparent 75%,
    transparent
  );
  background-size: 20px 20px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  padding: 0 1rem;
  transition:
    background-color 0.6s ease,
    color 0.6s ease,
    height 0.6s ease !important;
  margin-top: -10px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  scroll-snap-align: start;
}

.hero h1 {
  font-size: 2.4rem;
  margin-bottom: 1rem;
  letter-spacing: 1px;
  color: #fff;
}

.hero p {
  font-size: 1.2rem;
  max-width: 600px;
  line-height: 1.6;
}

/* When user scrolls down */
body.scrolled .hero {
  height: 50vh !important;
  background-color: #fff;
  color: #333;
}

body.scrolled .hero p {
  color: #333;
}

body.scrolled header {
  background-color: #fff;
  color: #333;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

body.scrolled header nav a {
  color: #333;
}

body.scrolled header .logo {
  color: #333;
}

html {
  scroll-behavior: smooth;
}

.hero,
header {
  transition: all 0.6s ease;
}

/** Section styling **/

#pricing li {
  margin-bottom: 15px;
}

/*
.connected-brands .brand {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 100px;
  background-color: #e7f2f7;
  border-radius: 50%;
}

.connected-brands .brand img {
  width: 50px;
  margin: auto;
}
*/
.connected-brands {
  display: grid;
  grid-template-columns: repeat(3, 100px);
  gap: 60px;
  justify-content: center;
  position: relative;
}

/* brand circle */
.connected-brands .brand {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 100px;
  background-color: #e7f2f7;
  border-radius: 50%;
  z-index: 2;
}

.connected-brands .brand img {
  width: 50px;
}

/* horizontal connection */
.connected-brands .brand::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  width: 60px;
  height: 2px;
  background: #b7d7e5;
  transform: translateY(-50%);
}

/* vertical connection */
.connected-brands .brand::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  width: 2px;
  height: 60px;
  background: #b7d7e5;
  transform: translateX(-50%);
}

/* remove right connectors on last column */
.connected-brands .brand:nth-child(3n)::after {
  display: none;
}

/* remove bottom connectors on last row */
.connected-brands .brand:nth-child(n + 7)::before {
  display: none;
}

@media (max-width: 450px) {
  .connected-brands {
    grid-template-columns: repeat(3, 50px);
    gap: 30px;
  }

  .connected-brands .brand {
    width: 50px;
    height: 50px;
  }

  .connected-brands .brand img {
    width: 35px;
  }
}

@font-face {
  font-display: block;
  font-family: Roboto;
  src:
    url(https://assets.brevo.com/font/Roboto/Latin/normal/normal/7529907e9eaf8ebb5220c5f9850e3811.woff2)
      format("woff2"),
    url(https://assets.brevo.com/font/Roboto/Latin/normal/normal/25c678feafdc175a70922a116c9be3e7.woff)
      format("woff");
}

@font-face {
  font-display: fallback;
  font-family: Roboto;
  font-weight: 600;
  src:
    url(https://assets.brevo.com/font/Roboto/Latin/medium/normal/6e9caeeafb1f3491be3e32744bc30440.woff2)
      format("woff2"),
    url(https://assets.brevo.com/font/Roboto/Latin/medium/normal/71501f0d8d5aa95960f6475d5487d4c2.woff)
      format("woff");
}

@font-face {
  font-display: fallback;
  font-family: Roboto;
  font-weight: 700;
  src:
    url(https://assets.brevo.com/font/Roboto/Latin/bold/normal/3ef7cf158f310cf752d5ad08cd0e7e60.woff2)
      format("woff2"),
    url(https://assets.brevo.com/font/Roboto/Latin/bold/normal/ece3a1d82f18b60bcce0211725c476aa.woff)
      format("woff");
}

#sib-container input:-ms-input-placeholder {
  text-align: left;
  font-family: Helvetica, sans-serif;
  color: #c0ccda;
}

#sib-container input::placeholder {
  text-align: left;
  font-family: Helvetica, sans-serif;
  color: #c0ccda;
}

#sib-container textarea::placeholder {
  text-align: left;
  font-family: Helvetica, sans-serif;
  color: #c0ccda;
}

#sib-container a {
  text-decoration: underline;
  color: #2bb2fc;
}

.case-study {
  background-color: #e1e6ea;
  width: 100%;
  padding: 20px;
  text-align: center;
  margin-bottom: 30px;
}

.case-study h2 {
  font-size: 3rem;
}

@media (max-width: 800px) {
  .case-study h2 {
    font-size: 2rem;
  }
}

.case-study .tagline {
  font-size: 1.4rem;
}

.case-study-item {
  display: grid;
  grid-template-columns: 30% 70%;
  background-color: #fff;
  border-radius: 15px;
  padding: 10px;
  margin: 10px auto;
  max-width: 600px;
}

.case-study-item-icon {
  background-color: #10508d;
  color: #fff;
  border-radius: 50%;
  width: 70px;
  height: 70px;
  margin: auto;
  font-size: 2.5rem;
  padding: 9px;
}

.case-study-content {
  text-align: left;
  margin-bottom: 0;
}

.case-study-logos {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 350px;
}

.case-study-logos img {
  height: 35px;
  margin-top: 10px;
}

/* Proposal Styles */
.proposal-header {
  display: grid;
  grid-template-columns: 30% 70%;
  background: rgba(16 26 32 / 0.2);
  padding: 20px;
}

.proposal-header h4 {
  color: #ffffff;
}

.proposal-header img {
  height: 50px;
}

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

.methodology {
  display: grid;
  grid-template-columns: 24% 24% 24% 24%;
  gap: 1%;
}

.methodology .phase {
  padding: 2rem;
  background-color: #051e41;
  border-radius: 20px;
  border: 2px solid transparent;
  background:
    linear-gradient(#051e41, #051e41) padding-box,
    linear-gradient(90deg, #327fab, #49e2d2) border-box;
}

.methodology .phase .item {
  text-align: center;
}

.methodology h5,
.methodology h6 {
  text-align: center;
  text-transform: uppercase;
}

.methodology h5 {
  color: #49e2d2;
}

.methodology h6 {
  color: #fff;
  font-size: 12px;
}

.methodology p {
  color: #fff;
  font-size: 10px;
}

.methodology .phase i {
  color: #fff;
  font-size: 30px;
}
