/***
Import fonts
***/
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700);

html, body {
    height: 100%;
}
body {
	font-family: 'Open Sans', sans-serif !important;
    display: flex;
    flex-direction: column;
    padding-top: 70px; /* Adjust based on navbar height */
}
.footer {
    margin-top: auto;
}

/* Purple theme */
.btn-purple, .bg-purple {
    background-color: #2f405d;
    color: #fff;
    border: none;
}
.btn-purple:hover, .bg-purple:hover {
    background-color: #2f405d;
    color: #fff;
}
.text-purple {
    color: #2f405d;
}

/* Primary Button */
.btn-primary1 {
    background: linear-gradient(45deg, #007bff, #0056b3);
    color: #fff; 
    border: 1px solid #0056b3;
}
.btn-primary1:hover {
    background: linear-gradient(45deg, #0056b3, #003f7f);
    color: #fff;
    border: 1px solid #0056b3;
}

/* Success Button */
.btn-success1 {
    background: linear-gradient(45deg, #40aba4, #198754);
    color: #fff;
    border: 1px solid #198754;
}
.btn-success1:hover {
    background: linear-gradient(45deg, #469ab0, #042c12);
    color: #fff;
    border: 1px solid #40aba4;
}

/* Flag Animation */
.flag {
    position: fixed;
    bottom: 0;
    width: 40px;
    animation: shootUp 1.5s ease-out forwards;
    z-index: 9999;
}
@keyframes shootUp {
    from { transform: translateY(0); opacity: 1; }
    to { transform: translateY(-80vh); opacity: 1; }
}
.small-flag {
    position: fixed;
    width: 20px;
    animation: burst 1s ease-out forwards;
    z-index: 9999;
}
@keyframes burst {
    from { transform: translate(0, 0) scale(0.5); opacity: 1; }
    to { transform: translate(var(--x), var(--y)) scale(1); opacity: 0; }
}

/* Blinking Text */
.blink {
  animation: color-change 1s infinite;
}
@keyframes color-change {
  0%, 100% { color: white; }
  50% { color: #198754; }
}

/* Section wrapper */
.section-home {
  margin: 20px 0;
  min-height: auto;
}

