/* ============ TOP AREA ============ */
.badge-pill{background:#5cb85c;color:#fff;letter-spacing:.14em;font-weight:600;
  font-size:.72rem;padding:.6em 1.6em;border-radius:999px;text-transform:uppercase;display:inline-block;}
.flyer-title{font-weight:800;color:#14418f;font-size:clamp(2.1rem,4.2vw,3.3rem);line-height:1.15;margin-top:1rem;}
.title-bar{width:150px;height:4px;background:#5cb85c;border-radius:2px;margin:1rem 0 1.1rem;}
.lead-text{color:#44536e;font-size:1.1rem;}
.lead-text .g{color:#5cb85c;font-weight:700;}
.lead-text .b{color:#14418f;font-weight:700;}

/* Logo */
.logo-mark{width:110px;height:auto;}
.logo-name{font-weight:800;color:#14418f;font-size:1.5rem;line-height:1.05;letter-spacing:.06em;margin-top:.4rem;}
.logo-name span{display:block;font-size:2.1rem;}
.logo-tag{color:#5cb85c;font-weight:600;font-size:.68rem;letter-spacing:.14em;margin-top:.3rem;}

/* Curved hero photo (green crescent + navy panel) */
.hero-visual{background:#5cb85c;border-radius:190px 18px 18px 190px;padding-left:12px;height:100%;}
.hv-inner{background:#14418f;border-radius:180px 12px 12px 180px;padding:20px 20px 20px 26px;height:100%;}
.hv-inner img{width:100%;height:100%;object-fit:cover;border-radius:160px 8px 8px 160px;}

/* ============ CHAMPION CARDS ============ */
.champ-card{background:#fff;border:2px solid #14418f;border-radius:16px;padding:.8rem;gap:1rem;height:100%;}
.champ-photo{flex:0 0 44%;}
.champ-photo img{width:100%;height:100%;object-fit:cover;border-radius:10px;}
.champ-text{border-left:3px solid #5cb85c;padding-left:1rem;font-weight:600;color:#14418f;font-size:1.1rem;}
.champ-text .name{display:block;font-size:1.35rem;font-weight:800;}
.name.green{color:#5cb85c;} .name.blue{color:#1273eb;}
.mid-deco{color:#c9d2e2;width:90px;margin:auto;display:block;}

/* ============ INFO CARDS ============ */
.info-card{background:#fff;border:1px solid #dde3ee;border-radius:14px;padding:1.1rem 1.25rem;position:relative;overflow:hidden;}
.info-card::after{content:"";position:absolute;left:0;bottom:0;height:4px;width:65%;background:#5cb85c;}
.info-ico{color:#5cb85c;font-size:2rem;line-height:1;}
.info-label{color:#14418f;font-weight:700;letter-spacing:.08em;font-size:1rem;}
.info-value{color:#44536e;font-size:.9rem;font-weight:500;}
#countdown-chip{display:inline-block;margin-top:.35rem;background:#eaf6ea;color:#3d8b3d;font-size:.72rem;font-weight:700;padding:.25em .9em;border-radius:999px;}

/* ============ CTA STRIP ============ */
.cta-strip{background:#0e2f66;color:#fff;text-align:center;position:relative;padding:1.6rem 5rem 1.9rem;}
.cta-strip p{font-weight:700;font-size:clamp(1rem,2.1vw,1.45rem);margin:0;}
.cta-strip::after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:14px;width:170px;height:3px;background:#5cb85c;}
.paddle{position:absolute;top:50%;transform:translateY(-50%);width:58px;color:#5cb85c;}
.paddle .ball{fill:#fff;}
.paddle.left{left:4%;} .paddle.right{right:4%;transform:translateY(-50%) scaleX(-1);}

/* ============ FOOTER STRIP ============ */
.footer-strip{background:#0b254d;color:#fff;padding:1.6rem 0;}
.f-logo .logo-name,.f-logo .logo-name span{color:#fff;}
.f-contact a{color:#fff;text-decoration:none;display:flex;align-items:center;gap:.7rem;font-size:1rem;}
.f-contact a+a{margin-top:.6rem;}
.f-contact i{background:#5cb85c;color:#fff;border-radius:50%;padding:.45em;font-size:.85rem;}
.f-divider{width:1px;background:rgba(255,255,255,.18);}
.s-title{color:#5cb85c;font-weight:700;font-size:1.15rem;}
.s-sub{font-size:1rem;color:#dfe7f5;}
.ico-circle{width:52px;height:52px;border:2px solid #5cb85c;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#5cb85c;font-size:1.4rem;}

/* Reveal animation */
.reveal{opacity:0;transform:translateY(24px);transition:all .7s ease;}
.reveal.visible{opacity:1;transform:none;}

/* ============ RESPONSIVE ============ */
@media (max-width:991.98px){
  .logo-block{margin:2rem 0;} 
  .hero-visual{max-width:560px;margin:0 auto;border-radius:60px 18px 18px 120px;}
  .hv-inner{border-radius:54px 12px 12px 112px;}
  .hv-inner img{border-radius:48px 8px 8px 104px;}
  .mid-deco{display:none;}
  .cta-strip{padding:1.4rem 1.25rem 1.8rem;}
  .paddle{display:none;}
  .f-divider{display:none;}
  .footer-strip .d-flex{justify-content:center !important;text-align:center;}
  .f-contact a{justify-content:center;}
  .f-sponsor{justify-content:center !important;}
}