/* ORVIA Fees — coloured pathway, arrows, service cards */
:root{
  --f-navy:#0B2450;
  --f-teal:#2B929D;
  --f-gold:#EAAA00;
  --f-purple:#82418F;
  --f-orange:#E74612;
  --f-green:#2E7D32;
  --f-cream:#F7F4EA;
  --f-ivory:#FBFAF5;
  --f-ink:#28251d;
  --f-muted:#5F5F5F;
  --f-border:rgba(11,36,80,.08);
}

/* Section shells */
.fees-band{padding:64px 0;position:relative}
.fees-band-ivory{background:var(--f-ivory)}
.fees-band-cream{background:var(--f-cream)}
.fees-band + .fees-band{border-top:1px solid var(--f-border)}

.fees-eyebrow{
  display:inline-block;
  font-family:'Inter',system-ui,sans-serif;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--f-navy);
  padding:6px 12px;
  background:#fff;
  border:1px solid var(--f-border);
  border-radius:999px;
  margin-bottom:14px;
}
.fees-h2{
  font-family:'Source Serif 4',Georgia,serif;
  color:var(--f-navy);
  font-size:clamp(1.6rem,2.4vw,2.1rem);
  font-weight:600;
  margin:0 0 12px;
  line-height:1.2;
  letter-spacing:-.01em;
}
.fees-lead{
  font-family:'Inter',system-ui,sans-serif;
  font-size:1.05rem;
  color:var(--f-ink);
  line-height:1.6;
  max-width:64ch;
  margin:0 0 32px;
}
.fees-muted{
  margin-top:20px;
  color:var(--f-muted);
  font-size:.92rem;
  font-style:italic;
}

/* PATHWAY FLOW — coloured blocks + arrows */
.fees-flow{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(6, 1fr) ;
  gap:0;
  align-items:stretch;
}
.fees-flow{
  grid-template-columns:1fr 24px 1fr 24px 1fr 24px 1fr 24px 1fr 24px 1fr;
}
.fees-step{
  background:#fff;
  border-radius:12px;
  padding:22px 20px 22px;
  box-shadow:0 2px 8px rgba(11,36,80,.06);
  border-top:6px solid var(--f-navy);
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:220px;
}
.fees-step-navy{border-top-color:var(--f-navy)}
.fees-step-teal{border-top-color:var(--f-teal)}
.fees-step-gold{border-top-color:var(--f-gold)}
.fees-step-purple{border-top-color:var(--f-purple)}
.fees-step-orange{border-top-color:var(--f-orange)}
.fees-step-green{border-top-color:var(--f-green)}

.fees-step .fees-num{
  position:absolute;
  top:-18px;
  left:20px;
  width:36px;
  height:36px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-family:'Source Serif 4',Georgia,serif;
  font-weight:600;
  font-size:1.1rem;
  box-shadow:0 2px 6px rgba(0,0,0,.15);
}
.fees-step-navy .fees-num{background:var(--f-navy)}
.fees-step-teal .fees-num{background:var(--f-teal)}
.fees-step-gold .fees-num{background:var(--f-gold);color:var(--f-navy)}
.fees-step-purple .fees-num{background:var(--f-purple)}
.fees-step-orange .fees-num{background:var(--f-orange)}
.fees-step-green .fees-num{background:var(--f-green)}

.fees-step .fees-badge{
  display:inline-block;
  align-self:flex-start;
  font-family:'Inter',system-ui,sans-serif;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:999px;
  margin:14px 0 10px;
  color:#fff;
}
.fees-step-navy .fees-badge{background:var(--f-navy)}
.fees-step-teal .fees-badge{background:var(--f-teal)}
.fees-step-gold .fees-badge{background:var(--f-gold);color:var(--f-navy)}
.fees-step-purple .fees-badge{background:var(--f-purple)}
.fees-step-orange .fees-badge{background:var(--f-orange)}
.fees-step-green .fees-badge{background:var(--f-green)}

.fees-step h3{
  font-family:'Source Serif 4',Georgia,serif;
  color:var(--f-navy);
  font-size:1.1rem;
  font-weight:600;
  margin:0 0 8px;
  line-height:1.25;
}
.fees-step p{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--f-ink);
  font-size:.92rem;
  line-height:1.55;
  margin:0;
}

.fees-arrow{
  align-self:center;
  color:var(--f-navy);
  font-size:1.6rem;
  font-weight:700;
  text-align:center;
  opacity:.5;
  padding:0 2px;
}

/* Mobile pathway: single column, arrows become down-arrows */
@media (max-width:960px){
  .fees-flow{
    grid-template-columns:1fr;
    gap:16px;
  }
  .fees-step{min-height:0}
  .fees-arrow{
    font-size:1.5rem;
    padding:0;
    transform:rotate(90deg);
  }
}

/* INDICATIVE BANDS — service cards */
.fees-cards{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:20px;
  margin:24px 0 0;
}
.fees-card{
  background:#fff;
  border-radius:12px;
  padding:24px 22px;
  border-left:6px solid var(--f-navy);
  box-shadow:0 2px 8px rgba(11,36,80,.06);
  display:flex;
  flex-direction:column;
}
.fees-card-navy{border-left-color:var(--f-navy)}
.fees-card-teal{border-left-color:var(--f-teal)}
.fees-card-gold{border-left-color:var(--f-gold)}
.fees-card-purple{border-left-color:var(--f-purple)}
.fees-card-orange{border-left-color:var(--f-orange)}
.fees-card-green{border-left-color:var(--f-green)}

.fees-card-badge{
  display:inline-block;
  align-self:flex-start;
  font-family:'Inter',system-ui,sans-serif;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:999px;
  margin-bottom:14px;
  color:#fff;
  background:var(--f-navy);
}
.fees-card-navy .fees-card-badge{background:var(--f-navy)}
.fees-card-teal .fees-card-badge{background:var(--f-teal)}
.fees-card-gold .fees-card-badge{background:var(--f-gold);color:var(--f-navy)}
.fees-card-purple .fees-card-badge{background:var(--f-purple)}
.fees-card-orange .fees-card-badge{background:var(--f-orange)}
.fees-card-green .fees-card-badge{background:var(--f-green)}

.fees-card h3{
  font-family:'Source Serif 4',Georgia,serif;
  color:var(--f-navy);
  font-size:1.15rem;
  font-weight:600;
  margin:0 0 10px;
  line-height:1.25;
}
.fees-card-band{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--f-navy);
  font-weight:600;
  font-size:.98rem;
  margin:0 0 8px;
  padding:8px 12px;
  background:var(--f-ivory);
  border-radius:6px;
  display:inline-block;
}
.fees-card-note{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--f-muted);
  font-size:.9rem;
  line-height:1.55;
  margin:0;
}

/* PAYMENT TERMS — mini colour cards */
.fees-pay-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:16px;
  margin-top:24px;
}
.fees-pay-card{
  padding:22px 20px;
  border-radius:10px;
  color:#fff;
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.fees-pay-navy{background:var(--f-navy)}
.fees-pay-teal{background:var(--f-teal)}
.fees-pay-gold{background:var(--f-gold);color:var(--f-navy)}
.fees-pay-purple{background:var(--f-purple)}
.fees-pay-card h3{
  font-family:'Source Serif 4',Georgia,serif;
  font-size:1.4rem;
  font-weight:600;
  margin:0 0 10px;
  line-height:1.2;
}
.fees-pay-card p{
  font-family:'Inter',system-ui,sans-serif;
  font-size:.95rem;
  line-height:1.5;
  margin:0;
  opacity:.95;
}
.fees-pay-gold p{opacity:1;color:var(--f-navy)}
