:root{
  --navy:#050a24;
  --navy2:#0a1030;
  --pink:#ec1e6f;
  --blue:#2e7ef0;
  --blue-light:#1e6fff;
  --cyan:#4fb3ff;
  --white:#ffffff;
}

*{box-sizing:border-box;margin:0;padding:0;}
body{
  font-family:'Segoe UI', Arial, Helvetica, sans-serif;
  background:var(--navy);
  color:var(--white);
  line-height:1.6;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block;}
ul{list-style:none;}

/* HERO */
.hero{position:relative;background:var(--navy);}
.coalition-bar{
  background:#000;
  color:#aab2c8;
  font-size:.65rem;
  text-align:center;
  padding:4px 10px;
  letter-spacing:.03em;
}
.hero-inner{position:relative;}
.hero-photo{width:100%;height:auto;display:block;}
.hero-logo{
  position:absolute;
  left:53%;
  top:20%;
  width:38%;
  height:auto;
  min-width:240px;
  max-width:500px;
}
.hero-women{
  position:absolute;
  left:4%;
  bottom:0;
  height:92%;
  width:auto;
  max-width:none;
}

/* Hero entrance (plays once on load, above-the-fold) */
.anim-women{animation:heroRise .8s cubic-bezier(.22,.9,.32,1) .15s both;}
.anim-logo{animation:heroFade .8s ease .55s both;}
.coalition-bar{animation:heroFadeDown .6s ease both;}

@keyframes heroRise{
  from{opacity:0; transform:translateY(36px);}
  to{opacity:1; transform:translateY(0);}
}
@keyframes heroFade{
  from{opacity:0; transform:translateY(14px) scale(.97);}
  to{opacity:1; transform:translateY(0) scale(1);}
}
@keyframes heroFadeDown{
  from{opacity:0; transform:translateY(-8px);}
  to{opacity:1; transform:translateY(0);}
}

/* Scroll-triggered reveal */
.reveal{opacity:0; transform:translateY(28px); transition:opacity .7s ease, transform .7s ease;}
.reveal.is-visible{opacity:1; transform:translateY(0);}

@media (prefers-reduced-motion: reduce){
  .anim-women, .anim-logo, .coalition-bar{animation:none;}
  .reveal{opacity:1; transform:none; transition:none;}
}

/* BIO */
.bio{padding:60px 6% 40px;}
.bio-inner{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  gap:50px;
  align-items:flex-start;
}
.bio-text{flex:1.6;}
.bio-photo{flex:1;position:sticky;top:40px;}
.bio-photo img{width:100%;height:auto;display:block;}
.heading-img{width:100%;max-width:420px;height:auto;margin-bottom:20px;}
.bio-text p{margin-bottom:18px;color:#dbe0f0;font-size:1.3rem;line-height:1.5;text-align:justify;-webkit-hyphens:auto;hyphens:auto;}
.bio-full{
  max-width:1200px;
  margin:10px auto 0;
  color:#dbe0f0;
  font-size:1.3rem;
  line-height:1.5;
  text-align:justify;
  -webkit-hyphens:auto;
  hyphens:auto;
}
.pink{color:var(--pink);}

/* CONTACT */
.contact{
  padding:70px 6%;
  background-image:linear-gradient(180deg, rgba(5,10,36,.75), rgba(5,10,36,.92)),
                    url("../images/contact-bg-opt.jpg");
  background-size:cover;
  background-position:center;
  background-attachment:fixed;
}

@media (max-width:768px){
  .contact{background-attachment:scroll;}
}
.contact-inner{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:60px;
  flex-wrap:wrap;
}
.contact-intro{flex:1;min-width:260px;text-align:left;display:flex;flex-direction:column;justify-content:center;}
.contact-intro h2{font-size:3.4rem;font-weight:600;margin-bottom:10px;}
.contact-sub{font-size:1.7rem;font-weight:700;margin-bottom:20px;}
.contact-desc{color:#c3c9de;max-width:400px;font-size:1.2rem;line-height:1.5;text-align:justify;-webkit-hyphens:auto;hyphens:auto;}
.contact-form{flex:1.2;min-width:300px;display:flex;flex-direction:column;gap:16px;}
.contact-form label{font-size:.95rem;color:#eef;}
.contact-form input,.contact-form textarea{
  background:var(--white);
  border:none;
  border-radius:6px;
  padding:14px 16px;
  font-size:1rem;
  font-family:inherit;
  color:#111;
  resize:vertical;
}
.contact-form button{
  background:var(--pink);
  color:var(--white);
  border:none;
  border-radius:8px;
  padding:16px;
  font-size:1.1rem;
  font-weight:600;
  cursor:pointer;
  transition:filter .15s ease;
}
.contact-form button:hover{filter:brightness(1.1);}

/* FOOTER */
.site-footer{
  background:linear-gradient(135deg,var(--blue-light),#3a8bff);
  padding:60px 6% 30px;
}
.footer-inner{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:40px;
  flex-wrap:wrap;
}
.footer-info h2{font-size:2rem;font-weight:600;margin-bottom:20px;}
.footer-info li{display:flex;align-items:center;gap:12px;margin-bottom:14px;font-size:1.05rem;}
.icon{color:var(--cyan);display:inline-flex;flex-shrink:0;}
.footer-badge{flex-shrink:0;}
.footer-badge img{width:270px;height:auto;max-width:100%;}
.footer-legal{
  max-width:1200px;
  margin:40px auto 0;
  font-size:.8rem;
  color:#dce6ff;
}

/* RESPONSIVE - MOBILE */
@media (max-width:768px){
  .coalition-bar{padding:8px 16px;line-height:1.4;}
  .hero-logo{width:40%;min-width:0;left:54%;top:38%;}
  .hero-women{left:2%;height:94%;}
  .bio{padding:48px 7% 28px;}
  .bio-inner{flex-direction:column;gap:28px;}
  .bio-photo{position:static;order:-1;max-width:280px;margin:0 auto;}
  .heading-img{max-width:280px;}
  .bio-text p,.bio-full{font-size:1.05rem;line-height:1.6;}
  .bio-full{margin-top:22px;}
  .contact{padding:56px 7%;}
  .contact-inner{flex-direction:column;gap:32px;}
  .contact-intro h2{font-size:2.2rem;}
  .contact-sub{font-size:1.3rem;margin-bottom:14px;}
  .contact-desc{font-size:1rem;max-width:none;}
  .footer-inner{flex-direction:column;text-align:center;}
  .footer-info li{justify-content:center;}
  .footer-badge img{margin:0 auto;}
}

@media (max-width:420px){
  .heading-img{max-width:220px;}
  .bio-text p,.bio-full{font-size:1rem;}
  .contact-intro h2{font-size:1.9rem;}
  .contact-form input,.contact-form textarea{font-size:.95rem;}
}
