:root{
  /* Colors */
  --tier-gold: #d4b372;
  --tier-ink: #1f2a3a;
  --tier-sand: #e8e1d8;
  --tier-accent: #c15d3d;

  /* Container */
  --tier-container-max: 1040px;

  /* Fonts */
  --font-body: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  --font-display: "Playfair Display", serif;

  /* Type scale */
  --fs-00: 0.75rem;   /* 12px */
  --fs-0:  0.875rem;  /* 14px */
  --fs-1:  1rem;      /* 16px */
  --fs-2:  1.125rem;  /* 18px */
  --fs-3:  2.125rem;  /* 34px */

  /* Tokens */
  --fs-kicker: var(--fs-3);
  --fs-label: var(--fs-00);

  /* Line heights */
  --lh-tight: 1.15;
  --lh-normal: 1.5;
  --lh-loose: 1.55;

  /* Weights */
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-xbold: 800;

  /* Hero */
  --hero-h: 460px;
  --hero-h-mobile: 280px;

  /* Feature (Goals section) */
  --feature-gap: 48px;
  --feature-media-w: 520px;
  --feature-box-max: 520px;
  --feature-lines: 4;

  /* Cards (Vision/Mission) */
  --card2-size: 460px;
  --card2-size-mobile: 92vw;
  --card2-border: 10px;
  --card2-frame-inset: 18px;

  /* Footer */
  --footer-row-max: 920px;
}

/* Custom container width */
@media (min-width: 992px){
  .container{ max-width: var(--tier-container-max); }
}

/* Base */
body{
  font-family: var(--font-body);
  font-size: var(--fs-1);
  line-height: var(--lh-normal);
  font-weight: var(--fw-regular);
  overflow-x: hidden;
  color:#2b2f36;
  background:#fff;
}

/* Typography */
h1,h2,h3,h4,h5,h6{
  font-family: var(--font-display);
  line-height: var(--lh-tight);
  font-weight: var(--fw-bold);
  margin: 0 0 .5rem;
}
p{
  margin: 0 0 1rem;
  font-size: var(--fs-1);
  line-height: var(--lh-loose);
}

/* Brand logo */
.brand-logo{
  display:block;
  max-width:140px;
  height:auto;
}

/* Hero */
.hero{
  position:relative;
  overflow:hidden;
  background:#0b0f17;
  box-shadow:0 10px 25px rgba(16,24,40,0.12);
}
.hero-video{
  width:100%;
  height: var(--hero-h);
  object-fit:cover;
  display:block;
}

/* Badge */
.brand-badge{
  position:absolute;
  top:16px;
  left:14px;
  background:rgba(255,255,255,0.96);
  border:1px solid rgba(16,24,40,0.08);
  padding:10px 14px;
  border-radius:4px;
  z-index:5;
}

/* Intro band */
.intro-band{
  background:var(--tier-sand);
  border-top:1px solid rgba(16,24,40,0.06);
  border-bottom:1px solid rgba(16,24,40,0.06);
}
.intro-text{
  margin:0 auto;
  color:#5b616b;
  padding:40px 10px;
}
.intro-text p{
  font-size: var(--fs-0);
  line-height: var(--lh-loose);
}

/* Sections */
.tier-section{ padding:52px 0 16px; }
.tier-kicker{
  font-family: var(--font-display);
  font-weight: var(--fw-xbold);
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--tier-accent);
  font-size: var(--fs-kicker);
  font-style:italic;
  line-height: var(--lh-tight);
}

/* =========================================
   VISION + MISSION (CARD STYLE)
   Fix: overlay behind text (z-index) + pure white text
   ========================================= */
.tier-section--cards{
  padding-top: 46px;
  padding-bottom: 46px;
}

.tier-card2{
  position: relative;
  width: var(--card2-size);
  height: var(--card2-size);
  overflow: hidden;
  background-size: cover;
  background-position: center;
  filter: saturate(0.85) contrast(0.90);
}

/* COLOR OVERLAY (behind text) */
.tier-card2::after{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(193, 93, 61, 0.22);
  mix-blend-mode: multiply;
  pointer-events:none;
  z-index: 1; /* behind text */
}

/* outer border + shadow (top) */
.tier-card2::before{
  content:"";
  position:absolute;
  inset:0;
  border: 6px  solid rgba(212, 179, 114, 0.55);
  box-shadow: 0 18px 40px rgba(16,24,40,0.18);
  pointer-events:none;
  z-index: 4;
}


/* inner frame line */
.tier-card2__frame{
  position:absolute;
  inset: var(--card2-frame-inset);
  border: 2px solid rgba(255,255,255,0.90);
  pointer-events:none;
  z-index: 3;
}

/* title (pure white, above overlay) */
.tier-card2__title{
  position:absolute;
  top: 44px;
  left: 54px;
  margin:0;

  font-family: var(--font-display);
  font-style: italic;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;

  color: #ffffff !important;
  font-size: clamp(44px, 4vw, 66px);
  line-height: 1;

  text-shadow: 0 10px 26px rgba(0,0,0,0.55);
  z-index: 2;
}

/* bottom text (NO background strip) */
.tier-card2__strip{
  position:absolute;
  left: 54px;
  right: 54px;
  bottom: 46px;
  background: transparent;
  padding: 0;
  z-index: 2; /* above overlay */
}

.tier-card2__strip p{
  margin:0;
  color: #ffffff !important;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.35;
  text-shadow: 0 8px 18px rgba(0,0,0,0.45);
}

/* =========================================
   GOALS SECTION (FEATURE ROW, keep existing)
   ========================================= */
.feature-row{
  display:flex;
  align-items:center;
  gap: var(--feature-gap);
  padding: 18px 0;
}
.feature-media{
  flex: 0 0 var(--feature-media-w);
  max-width: var(--feature-media-w);
  box-shadow:0 20px 45px rgba(16,24,40,0.14);
  border:1px solid rgba(16,24,40,0.08);
  overflow:hidden;
  background:#fff;
}
.feature-media img{
  width:100%;
  height:auto;
  display:block;
}
.feature-content{
  flex: 1 1 auto;
  text-align:left;
}

/* flip for Mission if used anywhere */
.feature-row--left{
  flex-direction: row-reverse;
}

/* Feature box */
.feature-box{
  max-width: var(--feature-box-max);
  background:#fff;
  text-align:left;
}
.feature-box p{
  margin:0;
  color:var(--tier-accent);
  font-size: var(--fs-0);
  line-height: var(--lh-loose);
  font-weight: var(--fw-semibold);

  display:-webkit-box;
  -webkit-line-clamp: var(--feature-lines);
  -webkit-box-orient: vertical;
  overflow:hidden;
}
.feature-box ul{
  margin:0;
  padding-left:18px;
  color:var(--tier-accent);
  font-size: var(--fs-0);
  line-height: var(--lh-loose);
  font-weight: var(--fw-semibold);
}
.feature-box li{ margin:8px 0; }

/* Footer */
.footer-band{
  margin-top:0;
  background:var(--tier-sand);
  padding:26px 0;
  border-top:1px solid rgba(16,24,40,0.06);
}
.footer-row{
  max-width: var(--footer-row-max);
  margin: 0 auto;
}
.footer-label{
  display:inline-block;
  font-weight: var(--fw-xbold);
  letter-spacing:0.08em;
  text-transform:uppercase;
  font-size: var(--fs-label);
  color:var(--tier-accent);
  position:relative;
  padding-bottom:8px;
}
.footer-label:after{
  content:"";
  position:absolute;
  left:50%;
  transform: translateX(-50%);
  bottom:0;
  width:44px;
  height:2px;
  background:rgba(16,24,40,0.35);
}
.footer-band .col-lg-6{ text-align:center; }

.footer-block{
  font-size: var(--fs-0);
  line-height: var(--lh-loose);
  color:#5b616b;
}
.footer-title{
  font-weight: var(--fw-bold);
  color:#2b2f36;
  margin-bottom:6px;
}
.footer-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:10px;
  color:#2b2f36;
  text-decoration:none;
  font-weight: var(--fw-medium);
}
.footer-link:hover{ text-decoration: underline; }

.footer-social{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
}
.social-btn{
  width:38px;
  height:38px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(255,255,255,0.65);
  border:1px solid rgba(16,24,40,0.10);
  color:#2b2f36;
  text-decoration:none;
  box-shadow:0 8px 18px rgba(16,24,40,0.08);
  transition: transform .15s ease, box-shadow .15s ease;
}
.social-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(16,24,40,0.12);
}
.footer-mini{
  font-size: var(--fs-00);
  color:#6b7280;
}

/* Responsive */
@media (max-width: 991.98px){
  .hero-video{ height: var(--hero-h-mobile); }

  /* cards */
  .tier-card2{
    width: var(--card2-size-mobile);
    height: var(--card2-size-mobile);
    max-width: 520px;
    max-height: 520px;
  }
  .tier-card2__title{
    left: 34px;
    top: 34px;
  }
  .tier-card2__strip{
    left: 34px;
    right: 34px;
    bottom: 34px;
  }
  .tier-card2__frame{
    inset: 14px;
  }

  /* goals feature row */
  .feature-row{
    flex-direction: column;
    align-items: center;
    gap: 18px;
  }
  .feature-media{
    width:100%;
    max-width: 720px;
  }
  .feature-content{
    text-align:center;
  }
  .tier-kicker{ text-align:center; }
  .feature-box{
    margin:0 auto;
    text-align:left;
  }
}
