/* style.css - Main stylesheet for DIASO MGT */
:root{
  --bg:#071019; --panel:#0b1620; --muted:#9bb0bf; --accent:#d4a953; --glass:rgba(255,255,255,0.03);
  --accent-2:#e9c98a;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;width:100%;display:flex;flex-direction:column}
body{font-family:'Poppins',system-ui,Arial,sans-serif;background:var(--bg);color:var(--muted);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}
nav{position:sticky;top:0;z-index:1200;background:linear-gradient(90deg,rgba(7,16,25,0.85),rgba(11,22,32,0.9));backdrop-filter:blur(6px);border-bottom:1px solid rgba(255,255,255,0.02)}
.nav-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px;position:relative;overflow:visible}
.brand{color:var(--accent);font-weight:800;letter-spacing:-0.5px}
.brand small{color:var(--muted);font-weight:500;margin-left:8px}
.hamburger{display:block;background:none;border:0;color:var(--muted);font-size:1.35rem;cursor:pointer;padding:4px 8px;transition:color 0.2s;position:relative;z-index:1301}
.hamburger:hover{color:#fff}
.menu{display:none;list-style:none;position:absolute;top:100%;right:14px;background:var(--panel);padding:14px;border-radius:8px;border:1px solid rgba(255,255,255,0.05);box-shadow:0 10px 25px rgba(0,0,0,0.5);min-width:220px;flex-direction:column;gap:8px;z-index:1300}
.menu.active{display:flex!important}
.menu a{color:var(--muted);text-decoration:none;padding:10px 14px;border-radius:6px;display:inline-flex;gap:10px;align-items:center;font-weight:600;width:100%;transition:all 0.2s}
.menu a:hover{color:#fff;background:var(--glass);transform:translateX(4px)}
.menu .icon{color:var(--accent);font-size:0.95rem;width:18px;text-align:center}
/* Responsive hero section for mobile */
.hero{
  position:relative;
  overflow:hidden;
  padding:120px 10px 60px 10px;
  text-align:center;
  flex-grow:1;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:60vh;
}
@media (max-width:600px) {
  .hero {
    padding:calc(90px + env(safe-area-inset-top)) 4vw 30px 4vw;
    min-height:unset;
  }
  .hero .inner {
    padding-top:12px;
  }
  .hero h1 {
    font-size:1.3rem;
    margin-bottom:10px;
  }
  .hero p {
    font-size:0.98rem;
    margin-bottom:16px;
  }
  .hero .stats {
    gap:10px;
    margin:18px 0;
  }
  .stat-number {
    font-size:1.2rem;
  }
  .stat-label {
    font-size:0.8rem;
  }
  .menu {
    left:3vw;
    right:3vw;
    top:100%;
    min-width:auto;
    width:auto;
    margin:0;
  }
  .menu a {
    padding:14px 16px;
  }
}
.hero-slides{position:absolute;inset:0;z-index:0;}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s ease-in-out;}
.hero-slide.active{opacity:1;}
.hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.35);z-index:1;}
.hero .inner{position:relative;z-index:2;max-width:900px;margin:0 auto;color:#fff}
.hero h1{font-family:'Merriweather',serif;font-size:2.8rem;margin-bottom:16px}
.hero p{color:rgba(255,255,255,0.85);margin-bottom:28px;font-size:1.15rem;line-height:1.6}
.hero .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:24px;margin:32px 0;max-width:750px;margin-left:auto;margin-right:auto}
.stat-item{text-align:center}
.stat-number{font-size:2.4rem;font-weight:900;color:var(--accent);margin-bottom:8px;font-family:'Merriweather',serif}
.stat-label{font-size:0.9rem;color:rgba(255,255,255,0.75);font-weight:600;letter-spacing:0.5px}
.hero .cta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  justify-content:center;
  margin-top:10px;
  z-index:10;
}

/* ---- Ticker above footer ---- */
.ticker-wrap {
  width: 100%;
  background: #071019;
  border-top: 1px solid rgba(212, 169, 83, 0.3);
  border-bottom: 1px solid rgba(212, 169, 83, 0.3);
  overflow: hidden;
  padding: 14px 0;
  white-space: nowrap;
}

.ticker-track {
  display: inline-block;
  animation: ticker-scroll 40s linear infinite;
  white-space: nowrap;
}

.ticker-track span {
  display: inline-block;
  color: #d4a953;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 0 36px;
}

.ticker-track span::after {
  content: '◆';
  margin-left: 36px;
  color: rgba(212, 169, 83, 0.35);
}

@keyframes ticker-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.ticker-wrap:hover .ticker-track {
  animation-play-state: paused;
}

@media (max-width: 600px) {
  .ticker-track { animation-duration: 50s; }
  .ticker-track span { font-size: 0.82rem; padding: 0 20px; }
}
@media (max-width:600px) {
  .hero .cta {
    flex-direction:column;
    align-items:center;
    gap:14px;
    width:100%;
  }
  .hero .cta .btn, .hero .cta .btn-ghost {
    width:90vw;
    max-width:340px;
    font-size:1.1rem;
    text-align:center;
  }
}
.btn{padding:12px 24px;border-radius:999px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}
.btn-primary{background:var(--accent);color:#071019}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,0.2);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,0.05)}
.container{
  max-width:1100px;
  margin:0 auto;
  padding:40px 8px;
  padding-bottom:80px;
  display:none;
}
@media (max-width:600px) {
  .container {
    padding:18px 2vw 100px;
  }
}
.panel{
  background:linear-gradient(180deg,rgba(255,255,255,0.02),rgba(255,255,255,0.01));
  border-radius:12px;
  padding:28px 10px;
  border:1px solid rgba(255,255,255,0.03);
  margin-bottom:22px;
  display:none;
}
.panel.faded-bg{
  background: linear-gradient(180deg, rgba(7,16,25,0.82), rgba(7,16,25,0.82)), url('Diaso55.jpg') center/cover no-repeat;
  border-color: rgba(255,255,255,0.08);
  color: #f4f4f4;
}
.panel.faded-bg h2,
.panel.faded-bg h3,
.panel.faded-bg h4,
.panel.faded-bg p,
.panel.faded-bg li {
  color: #f4f4f4;
}
@media (max-width:600px) {
  .panel {
    padding:12px 2vw;
    margin-bottom:14px;
  }
}
.panel.active-section{display:block}
h2{color:#fff;margin-bottom:12px}
p,li{color:var(--muted);line-height:1.7}
ul{padding-left:20px;margin-top:10px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:16px}
.card{background:linear-gradient(180deg,rgba(255,255,255,0.01),transparent);padding:18px;border-radius:10px;border:1px solid rgba(255,255,255,0.03)}
.card h4{color:var(--accent);margin-bottom:8px}
#ijede-details{display:none;margin-top:18px;padding:18px;border-radius:10px;background:linear-gradient(90deg,rgba(212,169,83,0.06),rgba(233,201,138,0.03));border-left:4px solid var(--accent)}
.flagship-grid{grid-template-columns:repeat(3,minmax(180px,1fr));}
.flagship-card{background:linear-gradient(180deg,rgba(212,169,83,0.14),rgba(255,255,255,0.03));border:1px solid rgba(212,169,83,0.22);box-shadow:0 18px 40px rgba(0,0,0,0.18);padding:32px;border-radius:18px;transition:transform 0.25s ease,box-shadow 0.25s ease;}
.flagship-card:hover{transform:translateY(-5px);box-shadow:0 24px 46px rgba(0,0,0,0.24);}
.flagship-card h1{font-size:3rem;line-height:1;letter-spacing:-0.03em;margin-bottom:8px;}
.flagship-card p{font-size:1rem;color:#eef3f8;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;margin-top:12px;}
footer{max-width:1100px;margin:auto auto 40px;padding:18px 20px;color:var(--muted);font-size:0.95rem;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.footer-left{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.footer-left p{margin:0;color:var(--muted);font-size:0.95rem}
.footer-right{color:var(--muted);font-size:0.95rem;white-space:nowrap;margin-left:auto}
footer{margin-top:26px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input,textarea{width:100%;padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,0.04);background:transparent;color:var(--muted)}
textarea{min-height:120px;resize:vertical}

/* ---- WhatsApp Button ---- */
.whatsapp-btn {
  position: fixed;
  bottom: 30px;
  right: 30px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  min-height: 60px;
  background: #25d366;
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.4);
  transition: all 0.3s ease;
  z-index: 999;
  font-size: 1rem;
  font-weight: 700;
}

.whatsapp-btn i {
  font-size: 1.6rem;
}

.whatsapp-btn span {
  display: none;
}

.home-view .whatsapp-btn span {
  display: inline-block;
}

.whatsapp-btn:hover {
  background: #20ba5b;
  transform: scale(1.05);
  box-shadow: 0 6px 20px rgba(37, 211, 102, 0.6);
}

@media (max-width: 600px) {
  .whatsapp-btn {
    bottom: 20px;
    right: 20px;
    padding: 12px 14px;
    font-size: 0.95rem;
    min-height: 52px;
  }

  .whatsapp-btn i {
    font-size: 1.4rem;
  }
}

/* ---- Team Profile ---- */
#team .grid{
  grid-template-columns: repeat(3, 1fr);
}
.team-img{
  width:200px;
  height:200px;
  object-fit:cover;
  border-radius:0;
  border:2px solid var(--accent);
  display:block;
  margin:0 auto 14px;
}

@media(max-width:820px){
  .hero h1{font-size:2rem}
  .form-row{grid-template-columns:1fr}
  .menu{right:3vw;left:3vw;top:100%;width:auto;min-width:auto}
  .menu a{padding:14px 16px}
  footer{flex-direction:column;align-items:center;text-align:center}
  .footer-left, .footer-right {width:100%;align-items:center}
  .footer-right{margin-left:0}
  #team .grid{grid-template-columns:1fr}
}

/* ----------------------------- */
/* Responsive helpers & fixes   */
/* ----------------------------- */
html {font-size:16px}
*, *::before, *::after {box-sizing:border-box}
body {font-size: clamp(14px, 1.8vw, 16px); line-height:1.6; -webkit-text-size-adjust:100%;}

/* Ensure media never overflows the viewport */
img, picture, svg, video {max-width:100%;height:auto;display:block}

/* Prevent long words/URLs from overflowing on narrow screens */
p, li, a, h1, h2, h3, h4, h5, h6 {overflow-wrap:anywhere;word-break:break-word;white-space:normal;}

/* Ensure flexible content containers can shrink on mobile */
.hero .inner, .container, .panel, .card, .flagship-card, .grid, .form-row {min-width:0;}

/* Menu & footer adjustments for small screens */
.menu a {white-space:normal}
footer .footer-right {white-space:nowrap}

@media (max-width:600px) {
  .nav-inner {padding:10px 3vw}
  .hero {padding:70px 4vw 30px 4vw}
  .hero .inner {padding:0 2vw;max-width:100%;}
  .hero h1 {font-size: clamp(1.3rem, 6vw, 1.9rem);}
  .hero p  {font-size: clamp(0.95rem, 3.8vw, 1.05rem);}
  .hero .stats {gap:14px;}
  .hero .cta .btn, .hero .cta .btn-ghost {width:100%;max-width:420px}
  .menu {right:3vw;left:3vw;min-width:unset;width:auto}
  footer {padding-left:3vw;padding-right:3vw}
  .footer-right {white-space:normal;margin-left:0}
  .flagship-grid {grid-template-columns:1fr;}
  .flagship-card {padding:26px;}
  .flagship-card h1 {font-size:clamp(2rem, 8vw, 2.4rem);}
  .panel {padding:18px 3vw;}
  .card {padding:18px 16px;}
  .grid {grid-template-columns:1fr;}
  .form-row {grid-template-columns:1fr;}
}

/* Small layout utility: keep main areas centered and aligned */
.nav-inner, .container, footer {max-width:1100px;margin-left:auto;margin-right:auto}
