/* =========================
   (A) OPTIONAL SLIDER STYLES
   ========================= */
.slider-text { position: absolute; right: 0; bottom: 0; }
#slider { overflow: hidden; }
#slider .card-content { max-width: 50%; }
@media screen and (max-width: 1023px){ #slider .card-content { display:none; } }

.prev, .next {
  cursor:pointer; position:absolute; top:50%; padding:16px; margin-top:-50px;
  color:#F1FFFA; font-weight:700; font-size:20px; transition:.3s ease;
  border-radius:0 3px 3px 0; user-select:none; -webkit-user-select:none;
}
.next { right:0; border-radius:3px 0 0 3px; }
.numbertext { color:#F1FFFA; font-size:12px; padding:8px 12px; position:absolute; right:0; top:0; }
.item-slide img { max-width:1200px; }
.caption-container { color:#F1FFFA; }

/* ================================
   (B) MMT THEME — Unified Dark Palette
   ================================ */
:root {
  /* logo sizing */
  --hero-logo-h: clamp(120px, 17vw, 220px);
  --hero-logo-gap: clamp(16px, 2.5vw, 36px);

  /* brand colors */
  --c-blue-light: #08A2EC;   /* accent blue */
  --c-blue-lighter: #b0def5;
  --c-blue-dark:  #04597D;   /* main blue */
  --c-lime:       #D1FC4A;   /* highlight */
  --c-gray-dark:  #454545;   /* background */

  /* functional tones */
  --bg:           var(--c-gray-dark);
  --surface:      #1E1E1E; /* Nordo Grey #686A6C in Hex*/
  --surface-alt:  color-mix(in srgb, var(--c-blue-dark) 30%, #000);
  --text:         #E6F4FF;
  --muted:        color-mix(in srgb, var(--c-blue-light) 40%, #E6F4FF);
  --primary:      var(--c-blue-light);
  --primary-contrast: var(--c-gray-dark);
  --ring:         rgba(19,162,232,.45);
  --border:       color-mix(in srgb, var(--c-lime) 20%, #999);
  --c-tomato:     #f21f54;

  /* bulma integration */
  --bulma-primary:               var(--c-blue-light);
  --bulma-link:                  var(--c-lime);
  --bulma-info:                  var(--c-blue-dark);
  --bulma-warning:               var(--c-lime);
  --bulma-danger:                #FE4A49;
  --bulma-text:                  var(--text);
  --bulma-scheme-main:           var(--bg);
  --bulma-body-background-color: var(--bg);
  --bulma-border:                var(--border);
}

/* =========================
   (C) GLOBAL SURFACES
   ========================= */
html, body{ 
    background: linear-gradient(
        170deg,
        var(--surface) 0%,
        var(--c-blue-dark) 70%,
        var(--c-lime) 100%
    );
    color: var(--text);
}

.navbar, .footer{
  background: var(--surface);
  border-bottom: 1px solid var(--bulma-border);
}
.footer{ border-top: 1px solid var(--bulma-border); border-bottom: none; }

.card{
  background: var(--surface);
  border: 1px solid var(--bulma-border);
  border-radius: 14px;
}

.card.is-alt{
  background: color-mix(in srgb, var(--c-light-blue) 22%, var(--c-mint));
  border-color: var(--c-light-blue);
}

.hero{
  background-image: linear-gradient(
    180deg,
    color-mix(in srgb, var(--c-light-blue) 8%, transparent),
    transparent
  ) !important;
}

/* =========================
   (D) TYPO / LINKS / NAV
   ========================= */
a{
    color: var(--primary); 
    
}

.muted{ color: var(--muted); }

.navbar .navbar-item { 
    border-bottom: 2px solid transparent;
    color: var(--c-blue-light);
}
.navbar .navbar-item.is-active{
  background: transparent;
  color: var(--c-lime);
  border-bottom-color: var(--c-light-blue);
  font-weight: 600;
}
.navbar .navbar-item:hover{
  background: transparent;
  color: var(--c-tomato);
  border-bottom-color: var(--c-tomato);
}

/* =========================
   (E) BUTTONS
   ========================= */
.button.is-primary{
  background: var(--primary);
  color: var(--primary-contrast);
  border-color: transparent;
}
.button.is-primary:hover{
  background: var(--c-mustard);
  color: var(--c-rich-black);
}
.button.is-primary:active{
  background: var(--c-midnight);
  color: var(--c-mint);
}
.button.is-primary:focus,
.button.is-primary:focus-visible{ outline:3px solid var(--ring); outline-offset:2px; }

.button.is-primary.is-light{
  background: color-mix(in srgb, var(--primary) 12%, transparent);
  color: var(--text);
  border-color: var(--primary);
}
.button.is-primary.is-light:hover{
  background: var(--c-mustard);
  color: var(--c-rich-black);
  border-color: var(--c-mustard);
}

.button.is-outlined{
  border-color: var(--c-light-blue);
  color: var(--c-light-blue);
}
.button.is-outlined:hover{
  background: var(--c-light-blue);
  color: var(--c-rich-black);
}

/* =========================
   (F) ACCESSIBILITY / UTILS
   ========================= */
:focus-visible{
  outline: 3px solid var(--ring);
  outline-offset: 2px;
}
.navbar-item:focus-visible,
a.button:focus-visible{
  outline: 3px solid var(--ring);
  outline-offset: 3px;
}
.ring{ outline:3px solid var(--ring); outline-offset:2px; border-radius:12px; }
.list-tight li{ margin-bottom:.35rem; }
.badge{
  display:inline-flex; align-items:center; gap:.4rem; padding:.28rem .55rem; border-radius:999px;
  background: color-mix(in srgb, var(--c-light-blue) 22%, var(--c-mint));
  font-size:.8rem; color: var(--text);
}

.has-text-lime {
    color: #D1FC4A;
}

/* =========================
   (I) REDUCED MOTION
   ========================= */
@media (prefers-reduced-motion: reduce){
  *{ transition: none !important; }
}

/* === Hero logo sizing + automatic spacing === */


.hero { position: relative; }

.hero-logo-overlay{
  position: absolute;
  top: 0; left: 0; right: 0;
  display: flex; justify-content: center;
  z-index: 9; pointer-events: none;
  padding-top: .25rem;
}

.hero-logo-overlay img{
  height: var(--hero-logo-h);
  width: auto;
  max-width: min(86vw, 760px); /* keeps side gutters on phones */
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.12));
  padding-top: 12px;
}

/* push the hero content down by the logo height + gap */
.hero.has-logo .hero-body {
  padding-top: calc(var(--hero-logo-h) + var(--hero-logo-gap));
}

strong {
    color: var(--bulma-primary);
}

/* Extra gutter on very small phones */
@media (max-width: 360px){
  .hero-logo-overlay img{ width: min(86vw, 720px); }
}


hr {
  border: none; /* Removes the default border */
  height: 2px; /* Sets the height of the line */
  background-color: black; /* Sets the background color to black */
}

/* Prevent card images from stretching */
.product-card .image img {
  object-fit: cover;   /* maintain aspect ratio, no crop */
  width: 100%;           /* fill container width */
  height: auto;          /* scale naturally */
  position: static;      /* override Bulma's absolute positioning */
  background-color: #fff; /* optional — adds clean background behind transparent images */
  border-radius: 10px;    /* optional — matches card rounding */
}

