/* Base */
:root{
  --green:#52ae32;
  --green-2:#3b8c23;
  --card: rgba(255,255,255,0.08);
  --stroke: rgba(255,255,255,0.22);
  --text: rgba(255, 255, 255, 0.6);;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Montserrat", sans-serif;
  font-size: 0.8rem;
  color:var(--text);
  background:#0a0a0a;
  overflow-x:hidden;
  display: flex;
  flex-direction: column;
}

/* Animated background */
.bg{
  position:fixed; inset:0; z-index:-2; /* Lower z-index to be behind video */
  background: radial-gradient(1200px 600px at 10% 20%, rgba(255,255,255,0.06), transparent 60%),
              radial-gradient(1000px 700px at 90% 30%, rgba(255,255,255,0.05), transparent 60%),
              linear-gradient(135deg, #127a17, #0e6a15);
}
.bg::before, .bg::after{
  content:""; position:absolute; inset:-20%;
  background: conic-gradient(from 0deg, rgba(255,255,255,0.12), transparent 30%, rgba(255,255,255,0.12), transparent 60%);
  filter:blur(80px); opacity:.35; animation:spin 40s linear infinite;
}
.bg::after{ animation-duration: 70s; opacity:.25; }
@keyframes spin{ to{ transform:rotate(1turn);} }

/* Video background */
.video-background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  overflow: hidden;
}

#backgroundVideo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

/* Add overlay to make content more readable */
.video-background::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5); /* Dark overlay for better text readability */
}

.container{ max-width:1100px; margin:0 auto; padding:24px; }

.header{
  display:flex; align-items:center; justify-content:space-between;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
  background: rgb(5 13 3 / 60%); /* Semi-transparent background */
  padding: 10px 24px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}
.brand{ display:flex; align-items:center; gap:10px; }
.mark{ width:28px; height:28px; border-radius:8px; background:linear-gradient(180deg, var(--green), var(--green-2));
       box-shadow:0 8px 24px rgba(82,174,50,0.45); }
.brand-name{ font-weight:800; letter-spacing:.4px; }

.user-area{ display:flex; align-items:center; gap:16px; opacity:.95; font-size: 1.3rem;}
.link-btn{
  background:transparent; border:none; color:var(--text); font-weight:600;
  cursor:pointer; padding:8px 10px; border-radius:10px;
}
.link-btn:hover{ background:rgba(255,255,255,0.08); }

/* Main content area with vertical centering */
.hero{ 
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 100vh; /* Full viewport height */
  padding: 0;
  margin-top: -20pt;
  max-width: 100%;
  width: 100%;
}

/* Content block that contains title and buttons */
.content-block {
  text-align: center;
  max-width: 100%;
  width: 100%;
  padding: 0 24px;
}

.l1-txt1 {
  font-size: 41px;
  font-weight: 200; /* Very thin font weight */
  text-transform: uppercase;
  letter-spacing: 15px;
  margin-bottom: 40px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sub{ 
  opacity:.9; 
  margin:0 0 40px; 
  font-size: 1.4rem;
}

/* Tools section with Bootstrap integration */
.tools-container {
  max-width: 880px;
  margin: 0 auto;
  width: 100%;
}

.tool{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:5px; padding:19px 28px; border-radius:12px;
  background: var(--card);
  border:1px solid var(--stroke);
  backdrop-filter: blur(6px);
  font-weight:700; letter-spacing: .5px;
  cursor:pointer; transition: transform .16s ease, background .2s ease, border-color .2s;
  height: 100%; /* Equal height for all buttons */
  color: white; /* Ensuring text is white */
}
.tool .icon{ font-size:26px; opacity:.9; }
.tool:hover{ transform: translateY(-2px); background: rgba(255,255,255,0.12); border-color: rgba(255,255,255,0.35); }
.tool:active{ transform: translateY(0); }

/* Dialog */
dialog{
  border:none; border-radius:16px; padding:20px 22px; color:#111;
  width:min(420px, 90vw);
  box-shadow: 0 12px 40px rgba(0,0,0,.45);
}
dialog::backdrop{ background: rgba(0,0,0,.55); backdrop-filter: blur(2px); }
dialog h3{ margin:0 0 8px; color:#0b4611; }
.dialog-actions{ display:flex; justify-content:flex-end; gap:10px; margin-top:18px; }
.btn{
  padding:10px 14px; border-radius:12px; font-weight:700; border:1px solid #0f5a18;
  color:#fff; background:linear-gradient(180deg, var(--green), var(--green-2));
  cursor:pointer; text-decoration:none; display:inline-block;
}
.btn:hover{ background:linear-gradient(180deg, var(--green-2), var(--green)); color:#fff}
.btn.ghost{ background:#fff; color:#0a0a0a; border-color:#dadada; }

/* Corner logos */
.corner-logos {
  background: rgb(5 13 3 / 60%);
  position: fixed;
  bottom: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding: 10px 24px 24px 24px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.left-logo, .right-logo {
  width: auto;
  opacity: 0.7; /* Make logos slightly transparent */
  transition: opacity 0.3s ease;
}
.left-logo:hover, .right-logo:hover {
  opacity: 1;
}
.logo-main {
  height: 80px;
}
.left-logo {
  margin-left: 20px;
  height: 55px;
}

.right-logo {
    margin-right: 20px;
    height: 40px;
    position: absolute;
    right: 20px;
    bottom: 22px;

}

/* Responsive */
@media (max-width: 800px){
  .row > div {
    margin-bottom: 20px;
  }
  
  .l1-txt1 {
    font-size: 1.2rem;
    letter-spacing: 8px;
  }
}
