/* ===============================
   BRAND GUIDE — SCREEN LAYOUT
   =============================== */

body {
  margin: 0;
  background: white;
  font-family: var(--font-primary);
}


/* PAGE WRAPPER */

.brandguide {
  max-width: 1100px;
  margin: 0 auto;
  padding: 24px;

  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  gap: 28px;
}


/* HEADER */

.header {
  color: var(--brand-base);
  background: var(--ui-light);

  padding: 60px;
  border-radius: 4px;
}

.headercont {
  display: flex;
}

.header .logo {
  max-width: 60px;
  width: 100%;
  height: auto;
  /*object-fit: */
  margin-bottom: 1rem;
  margin-right: 2rem;
}

.header h1 {
  margin: 0;
  font-size: clamp(28px, 3vw, 52px);
  font-weight: var(--font-bold);
}

.header p {
  margin-top: 8px;
  font-size: clamp(14px, 1.6vw, 22px);
  opacity: 0.9;
}


/* SECTION TITLES */

.section-title {
  font-size: clamp(18px, 2vw, 32px);
  font-weight: var(--font-semibold);
}


/* TWO COLUMN ROWS */

.row-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}


/* GRIDS */

.grid-4 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 16px;
}

.grid-3 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 16px;
}

.grid-2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
}


/* COLOR TILES */

.tile {
  border-radius: 14px;
  padding: 16px;

  min-height: 120px;

  display: flex;
  flex-direction: column;
  justify-content: space-between;

  box-sizing: border-box;

  color: var(--ui-light);

  font-size: clamp(13px, 1.2vw, 18px);
  font-weight: var(--font-semibold);
}


/* COLOR UTILITIES */

.tile-brand-base {
  background: var(--brand-base);
}

.tile-action {
  background: var(--action-primary);
}

.tile-energy {
  background: var(--energy-primary);
}

.tile-anchor {
  background: var(--deep-anchor);
}

.tile-purple {
  background: var(--accent-purple);
}

.tile-pink {
  background: var(--accent-pink);
}

.tile-orange {
  background: var(--accent-orange);
}

.tile-light {
  background: var(--ui-light);
  color: var(--deep-anchor);
  border: 0.5px solid var(--ui-grey);
}

.tile-grey {
  background: var(--ui-grey);
}


/* TINTS */

.tint-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.tint-stack {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tint {
  width: 48px;
  height: 48px;
  border-radius: 8px;
}


/* TYPOGRAPHY BLOCK */

.font-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
}

.font-card {
  background: #ffffff;
  border-radius: 12px;
  padding: 16px;
  box-sizing: border-box;
}

.font-sample {
  font-family: var(--font-primary);
  margin-bottom: 8px;
}

.font-sample.heading {
  font-size: 28px;
  font-weight: var(--font-bold);
}

.font-sample.subheading {
  font-size: 20px;
  font-weight: var(--font-semibold);
}

.font-sample.body {
  font-size: 16px;
  font-weight: var(--font-regular);
}

.font-meta {
  font-size: 13px;
  opacity: 0.7;
}


/* FOOTER */

.footer {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;

  font-size: clamp(12px, 1vw, 16px);
  font-weight: var(--font-medium);
}