/* Homepage palette preview. Loaded only by index.html, after its existing styles. */
:root {
  --home-warm: #efede8;
  --home-section: #f1f5f9;
  --home-cool: #f8fafc;
  --home-ink: #0f172a;
  --home-copy: #334155;
  --home-muted: #526174;
  --home-line: #dce2df;
  --home-shadow: 0 12px 32px rgba(15, 23, 42, 0.07);
}
body { background: var(--home-warm); color: var(--home-ink); }
/* Light surfaces alternate gently to keep the long page easy to scan. */
.about, .solutions, .portfolio { background: var(--home-section); }
.our-work-marquee, .contact { background: #ffffff; }
.newsletter { background: #ffffff; }
#what-we-solve { background: var(--home-cool) !important; }
#past-events { background: #ffffff; }
.hs-slide--event { background: #07111f; }
.hs-slide--md { background: radial-gradient(circle at 50% 42%, rgba(22,201,95,0.17), transparent 34%), linear-gradient(135deg, #06101d 0%, #0a1c25 52%, #07131e 100%); }
.hs-slide--md::before { opacity: 1; }
.about-body p,
.solution-card-desc, .solution-card-features li, .solution-mobile-card p,
.ev-card__desc, .ev-blog-link, .newsletter-text { color: var(--home-copy); }
.about-title,
.solutions-header .section-title, .solution-card-title, .solution-mobile-card h4,
.ev-section-heading--light, .ev-card__title, .our-work-heading,
.newsletter-title { color: var(--home-ink); }
.section-label-light, .solutions-header .section-label,
.ev-section-label--on-dark { color: var(--color-green); text-shadow: none; }
.hev__label, .hmd__eyebrow, .hmd__title span { color: #00d84f; text-shadow: none; }
.hmd__date {
  background: #e7f1e6; border-color: #c6dbc7; color: #026b0b;
}
.ev-section-label--on-dark::before {
  background: var(--color-green); box-shadow: none;
}
.hev__label::before { background: #00d84f; box-shadow: none; }
.hmd__mark { background: #000000; border-color: var(--home-line); box-shadow: var(--home-shadow); }
.hmd__mark img { filter: none; }
/* Match the opening hero CTA's colour, glow, shimmer and interaction effects.
   Keep each button's existing size and shape. */
:is(.btn-primary, .header-cta, .hev__cta, .hev-card__btn--primary, .nova-fab, .nova-send) {
  background: var(--btn-glow-bg);
  border-color: rgba(255,255,255,0.08);
  color: #fff;
  box-shadow: var(--btn-glow-shadow), 0 0 0 1px rgba(255,255,255,0.05) inset, 0 0 24px var(--btn-glow-ring);
  transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease, background 0.3s ease;
  position: relative;
  overflow: hidden;
}
:is(.btn-primary, .header-cta, .hev__cta, .hev-card__btn--primary, .nova-fab, .nova-send):hover {
  background: var(--btn-glow-bg);
  border-color: rgba(255,255,255,0.08);
  color: #fff;
  transform: translateY(-3px);
  box-shadow: var(--btn-glow-shadow-hover), 0 0 0 1px rgba(255,255,255,0.08) inset, 0 0 34px rgba(0,255,170,0.32);
  filter: brightness(1.04);
}
:is(.hev__cta, .hev-card__btn--primary, .nova-fab, .nova-send)::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.18) 35%, transparent 70%);
  transform: translateX(-120%);
  transition: transform 0.7s ease;
  pointer-events: none;
}
:is(.hev__cta, .hev-card__btn--primary, .nova-fab, .nova-send):hover::before { transform: translateX(120%); }
:is(.btn-primary, .header-cta, .hev__cta, .hev-card__btn--primary, .nova-fab, .nova-send):active { transform: translateY(-1px) scale(0.985); }
.hs-dot { background: #a4aea8; }
.hs-dot.hs-dot--active { background: #028a0e; }
.hev-nav { box-shadow: var(--home-shadow); border-color: var(--home-line); }
.hev-nav:hover { background: #028a0e; }
#what-we-solve .section-title, #what-we-solve h3 { color: var(--home-ink) !important; }
#what-we-solve p { color: var(--home-copy) !important; }
#what-we-solve .solve-grid > div {
  background: #fff !important; border-color: var(--home-line) !important;
  border-top-color: #028a0e !important; box-shadow: var(--home-shadow);
}
.solution-card-inner, .solution-mobile-card, .ev-card,
.contact-form-wrapper, .newsletter-card {
  background: #fff; border: 1px solid var(--home-line); box-shadow: var(--home-shadow);
}
.solution-card-inner::after { background: #b8d6bf; opacity: 0.4; }
.solution-card-inner::before { background: radial-gradient(250px circle at var(--x,50%) var(--y,50%), rgba(2,138,14,0.05), transparent 60%); }
.ev-card__date, .ev-card__location { color: var(--home-muted); }
.ev-card__date svg, .ev-card__location svg { stroke: currentColor; }
.ev-card__media img, .ev-card:hover .ev-card__media img { opacity: 1; }
.ev-blog-link a, .ev-blog-link a:hover { color: #026b0b; }
#our-work > .container > p { color: var(--home-muted) !important; }
.work-card-overlay { background: linear-gradient(to top, rgba(16,24,45,0.8), rgba(16,24,45,0.25) 45%, transparent 75%); }
.work-card-content { background: rgba(15,23,42,0.6); }
.portfolio-item { box-shadow: 0 16px 32px rgba(15,23,42,0.12); }
.newsletter-input, .newsletter-input:focus,
.form-group input, .form-group textarea {
  background: #f8fafc; color: var(--home-ink); border-color: #bbc7c0;
}
.newsletter-input::placeholder, .form-group input::placeholder,
.form-group textarea::placeholder { color: var(--home-muted); }
.newsletter-input:focus, .form-group input:focus, .form-group textarea:focus {
  border-color: #028a0e; box-shadow: 0 0 0 3px rgba(2,138,14,0.12);
}
.newsletter-visual-overlay { background: linear-gradient(180deg, transparent, rgba(15,23,42,0.15)); }
a:focus-visible, button:focus-visible { outline: 2px solid #026b0b; outline-offset: 4px; }
/* White navigation sits directly over the dark slides until scrolling. */
.header:not(.scrolled), .header:not(.scrolled) .header-container { background: transparent; box-shadow: none; }
.header:not(.scrolled) .nav-link::after { background-color: #00d84f; }
/* Preserve the white Malaysia Digital artwork on its black panel. */
.hmd__mark img { filter: none; opacity: 1; }

/* Side arrows stay centred in the hero; indicators remain at the bottom. */
.hs-pagination { align-items: center; gap: 12px; }
.hs-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 21;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 0;
  background: #fff;
  color: #000;
  box-shadow: none;
  transition: background 0.2s ease;
}
.hs-arrow--prev { left: 80px; }
.hs-arrow--next { right: 80px; }
.hs-arrow svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.hs-arrow:hover { background: #e2e8f0; color: #000; }
.hs-arrow:active { background: #cbd5e1; }
@media (min-width: 768px) {
  /* Leave room for the inset controls beside the two-column slides. */
  .hmd { width: min(1120px, calc(100% - 304px)); }
  .hev { max-width: min(1180px, calc(100% - 272px)); }
}
@media (max-width: 767px) {
  .hs-arrow--prev { left: 0; }
  .hs-arrow--next { right: 0; }
  .hs-slide--s1 .hs-content { padding-left: 52px; padding-right: 52px; }
  .hev { padding-left: 52px; padding-right: 52px; }
  .hmd { width: calc(100% - 104px); }
}
