:root {
  --gt-dark: #36474f;
  --gt-green: #739c51;
  --gt-green-dark: #5f8442;
  --gt-light: #f0ebe2;
  --gt-white: #ffffff;
  --gt-radius: 8px;
  --gt-maxw: 1080px;
  --gt-gap: 20px;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  color: var(--gt-dark);
  background: var(--gt-white);
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* Hero */
.gt-hero {
  position: relative;
  width: 100%;
  min-height: 200px;
  background-image: url('img/hero.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media (min-width: 768px) {
  .gt-hero { min-height: 240px; }
}

.gt-hero__badge {
  position: absolute;
  top: 16px;
  left: 16px;
  background: var(--gt-light);
  border-radius: var(--gt-radius);
  padding: 10px 18px;
  box-shadow: 0 2px 8px rgba(54, 71, 79, 0.18);
}
.gt-hero__logo {
  display: block;
  height: 80px;
  width: auto;
}

/* Main container */
.gt-main {
  max-width: var(--gt-maxw);
  margin: 0 auto;
  padding: 32px 20px 48px;
}

/* Card grid */
.gt-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--gt-gap);
}
@media (min-width: 600px) {
  .gt-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 900px) {
  .gt-grid { grid-template-columns: repeat(3, 1fr); }
}

/* Card */
.gt-card {
  display: block;
  background: var(--gt-green);
  border: 1px solid var(--gt-green-dark);
  border-radius: var(--gt-radius);
  padding: 22px 22px 26px;
  color: var(--gt-white);
  text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
.gt-card:hover {
  transform: translateY(-3px);
  background: var(--gt-green-dark);
  box-shadow: 0 6px 16px rgba(54, 71, 79, 0.22);
}
.gt-card:focus-visible {
  outline: 3px solid var(--gt-dark);
  outline-offset: 2px;
}
.gt-card__title {
  margin: 0 0 6px;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.2;
}
.gt-card__subtitle {
  margin: 0;
  font-size: 0.85rem;
  font-weight: 400;
  line-height: 1.35;
  opacity: 0.92;
}

/* Coming soon (no env URL yet) */
.gt-card--coming-soon {
  opacity: 0.6;
  cursor: default;
}
.gt-card--coming-soon:hover {
  transform: none;
  background: var(--gt-green);
  box-shadow: none;
}
