*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:      #F3FAF0;
  --white:   #FFFFFF;
  --ink:     #0E1A0B;
  --ink2:    #2E4228;
  --ink3:    #7A9472;
  --green:   #8BC53F;
  --green2:  #6FA028;
  --green-dk:#0E1A0B;
  --green-lt:#EAF5D6;
  --green-md:#C4E8A8;
  --line:    #D4ECC4;
  --ease:    cubic-bezier(0.22,1,0.36,1);
  --r:       14px;
}
html{font-size:16px}
body{
  font-family:'Inter',sans-serif;background:var(--bg);color:var(--ink);
  min-height:100vh;display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  padding:24px 20px;-webkit-font-smoothing:antialiased;
}

.shell{width:100%;max-width:480px;display:flex;flex-direction:column;gap:0;animation:fadeUp .65s var(--ease) both}

/* ── TOP CARD ── */
.top-card{
  background:var(--green);border-radius:18px 18px 0 0;
  padding:26px 24px 26px;
  display:flex;flex-direction:column;gap:20px;
  position:relative;overflow:hidden;
}
.top-card::before{
  content:"";position:absolute;top:-60px;right:-60px;
  width:220px;height:220px;border-radius:50%;
  background:rgba(255,255,255,0.12);pointer-events:none;
}
.top-card::after{
  content:"";position:absolute;bottom:-80px;left:20px;
  width:180px;height:180px;border-radius:50%;
  background:rgba(255,255,255,0.07);pointer-events:none;
}

.toprow{display:flex;justify-content:space-between;align-items:center;gap:12px;position:relative;z-index:1}
.logo{display:flex;align-items:center;gap:14px;text-decoration:none}
.logo-mark{
  width:46px;height:58px;display:grid;place-items:center;
  border:1.5px solid var(--green-dk);border-radius:11px;
  overflow:hidden;background:var(--green);
}
.logo-mark img{width:100%;height:100%;object-fit:cover;display:block}
.logo-wordmark{height:30px;width:auto;display:block;filter:brightness(0)}

.lang{display:flex;gap:5px}
.lang a{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--green-dk);text-decoration:none;border:1.5px solid rgba(14,26,11,0.2);border-radius:6px;padding:4px 10px;background:rgba(255,255,255,0.25);transition:all .2s}
.lang a.active,.lang a:hover{background:var(--green-dk);border-color:var(--green-dk);color:var(--green)}

.hero{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px}
.v-tag{
  align-self:flex-start;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--green-dk);background:rgba(14,26,11,0.12);border-radius:100px;padding:3px 11px;
}
.hero h1{
  font-family:'DM Sans',sans-serif;font-weight:800;
  font-size:clamp(26px,5vw,34px);letter-spacing:-.03em;line-height:1.08;
  color:var(--green-dk);
}
.hero p{font-size:13.5px;color:rgba(14,26,11,0.65);line-height:1.5}

/* ── LINKS PANEL ── */
.links-panel{
  background:var(--white);
  border:1px solid var(--line);border-top:none;
  border-radius:0 0 18px 18px;
  padding:16px;display:flex;flex-direction:column;gap:7px;
}

.card{
  display:flex;align-items:center;gap:13px;
  padding:14px 15px;
  background:var(--bg);border:1px solid var(--line);border-radius:12px;
  text-decoration:none;color:var(--ink);
  transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .25s,background .25s;
  animation:fadeUp .55s var(--ease) both;
}
.card:nth-child(1){animation-delay:.18s}.card:nth-child(2){animation-delay:.24s}
.card:nth-child(4){animation-delay:.31s}.card:nth-child(5){animation-delay:.37s}
.card:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(139,197,63,0.22);border-color:var(--green-md);background:var(--green-lt)}
.card:hover .c-icon{background:var(--green);color:var(--green-dk)}
.card:hover .c-arrow{color:var(--green2);transform:translate(3px,-3px)}

.c-icon{
  width:40px;height:40px;background:var(--green-lt);border-radius:10px;
  display:grid;place-items:center;color:var(--green2);flex-shrink:0;
  transition:background .28s var(--ease),color .28s;
}
.c-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75}
.c-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.c-title{font-weight:600;font-size:14px;letter-spacing:-.01em;color:var(--ink)}
.c-desc{font-size:11.5px;color:var(--ink3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c-arrow{color:var(--ink3);flex-shrink:0;transition:color .25s,transform .35s var(--ease)}
.c-arrow svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}

.divider{
  display:flex;align-items:center;gap:10px;
  font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);
  padding:2px 0;
}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--line)}

.footer-strip{
  margin-top:6px;padding-top:13px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px;
  font-size:11.5px;color:var(--ink3);
}
.footer-strip a{color:var(--ink3);text-decoration:none;transition:color .2s}
.footer-strip a:hover{color:var(--green2)}

/* ── MAINTENANCE BANNER ── */
.maintenance{
  background:#FFF8E1;border:1px solid #F5D77A;border-radius:12px;
  padding:14px 16px;font-size:13px;line-height:1.5;color:#5A4500;
  display:flex;flex-direction:column;gap:4px;
}
.maintenance strong{font-weight:700;color:#3D2F00}

@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition-duration:.01ms!important}}
