.tgw-home-essentials {
  --tgw-he-primary: var(--e-global-color-primary, #1f4e8c);
  --tgw-he-text: var(--e-global-color-text, #283443);
  --tgw-he-muted: var(--e-global-color-secondary, #667085);
  --tgw-he-accent: var(--e-global-color-accent, var(--tgw-he-primary));
  --tgw-he-surface: var(--e-global-color-ffffff, #fff);
  --tgw-he-border: rgba(30, 55, 80, .12);
  color: var(--tgw-he-text);
  font: inherit;
  margin: 0 auto;
  max-width: 1180px;
  padding: clamp(28px, 4vw, 56px) 20px;
}
.tgw-home-essentials *, .tgw-home-essentials *::before, .tgw-home-essentials *::after { box-sizing: border-box; }
.tgw-home-essentials__head { max-width: 760px; margin-bottom: 24px; }
.tgw-home-essentials__eyebrow {
  display: inline-block;
  color: var(--tgw-he-primary);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.tgw-home-essentials__head h2 {
  color: inherit;
  font: inherit;
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 700;
  line-height: 1.15;
  margin: 0 0 10px;
}
.tgw-home-essentials__head p,
.tgw-home-essentials__card p,
.tgw-home-essentials__note {
  color: var(--tgw-he-muted);
  font: inherit;
  line-height: 1.65;
}
.tgw-home-essentials__head p { margin: 0; max-width: 720px; }
.tgw-home-essentials__grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.tgw-home-essentials__card {
  background: var(--tgw-he-surface);
  border: 1px solid var(--tgw-he-border);
  border-radius: 14px;
  box-shadow: 0 8px 28px rgba(18, 43, 70, .05);
  display: flex;
  flex-direction: column;
  min-height: 250px;
  padding: 24px;
}
.tgw-home-essentials__icon {
  align-items: center;
  background: color-mix(in srgb, var(--tgw-he-primary) 9%, white);
  border-radius: 10px;
  color: var(--tgw-he-primary);
  display: inline-flex;
  font-size: 1.15rem;
  font-weight: 700;
  height: 42px;
  justify-content: center;
  margin-bottom: 18px;
  width: 42px;
}
.tgw-home-essentials__card h3 {
  color: inherit;
  font: inherit;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 8px;
}
.tgw-home-essentials__card p { margin: 0 0 22px; }
.tgw-home-essentials__links {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: auto;
}
.tgw-home-essentials__button,
.tgw-home-essentials__text-link {
  font: inherit;
  font-size: .92rem;
  font-weight: 650;
  text-decoration: none;
}
.tgw-home-essentials__button {
  background: var(--tgw-he-primary);
  border: 1px solid var(--tgw-he-primary);
  border-radius: 8px;
  color: #fff;
  display: inline-flex;
  padding: 10px 16px;
}
.tgw-home-essentials__button:hover,
.tgw-home-essentials__button:focus-visible { filter: brightness(.94); color: #fff; }
.tgw-home-essentials__text-link { color: var(--tgw-he-primary); }
.tgw-home-essentials__button:focus-visible,
.tgw-home-essentials__text-link:focus-visible { outline: 3px solid color-mix(in srgb, var(--tgw-he-primary) 28%, transparent); outline-offset: 3px; }
.tgw-home-essentials__note {
  border-left: 3px solid var(--tgw-he-primary);
  margin: 22px 0 0;
  padding: 2px 0 2px 14px;
}
.tgw-home-essentials__note strong { color: var(--tgw-he-text); }

@media (max-width: 900px) {
  .tgw-home-essentials__grid { grid-template-columns: 1fr; }
  .tgw-home-essentials__card { min-height: 0; }
}
@media (max-width: 600px) {
  .tgw-home-essentials { padding-left: 16px; padding-right: 16px; }
  .tgw-home-essentials__card { padding: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .tgw-home-essentials *, .tgw-home-essentials *::before, .tgw-home-essentials *::after { scroll-behavior: auto !important; transition: none !important; }
}
