/*
  FlexiCare Insurance — V1240 Useful Hub Premium Refinement
  Scope: /xrisima only, via body.fc-useful-hub.
  Purpose: calm premium petrol-light hierarchy for useful links, TOC, cards and continuation blocks.
*/

body.fc-useful-hub .fc-useful-shell{
  max-width: 1160px;
}

body.fc-useful-hub .fc-useful-hero{
  position: relative;
  overflow: hidden;
  padding: clamp(26px, 3vw, 38px);
  border-color: rgba(14, 92, 105, .15);
  background:
    radial-gradient(circle at 92% 12%, rgba(55, 150, 166, .12), transparent 31%),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(244,251,252,.94));
  box-shadow: 0 18px 46px rgba(8, 57, 70, .055);
}

body.fc-useful-hub .fc-useful-hero h1{
  max-width: 820px;
  letter-spacing: -.035em;
}

body.fc-useful-hub .fc-useful-hero__lead{
  max-width: 840px;
  line-height: 1.72;
  color: rgba(29, 75, 86, .78);
}

body.fc-useful-hub .fc-useful-hero__meta span{
  min-height: 34px;
  border-color: rgba(14, 92, 105, .14);
  background: rgba(255,255,255,.82);
  box-shadow: 0 6px 16px rgba(8, 57, 70, .035);
}

body.fc-useful-hub .fc-useful-intro-grid{
  gap: 14px;
  margin-top: 18px;
}

body.fc-useful-hub .fc-useful-intro-card{
  min-height: 100%;
  border-color: rgba(14, 92, 105, .13);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,252,253,.94));
  box-shadow: 0 12px 28px rgba(8,57,70,.045);
}

body.fc-useful-hub .fc-useful-intro-card__label{
  width: 34px;
  height: 34px;
  border: 1px solid rgba(14, 92, 105, .16);
  background: rgba(45, 142, 154, .10);
}

body.fc-useful-hub .fc-useful-intro-card h2{
  font-size: 1rem;
  line-height: 1.3;
  color: rgba(5, 52, 65, .96);
}

body.fc-useful-hub .fc-useful-intro-card p{
  color: rgba(35, 75, 84, .75);
  line-height: 1.68;
}

body.fc-useful-hub .fc-useful-toc{
  top: 92px;
  margin-top: 18px;
  padding: 12px;
  border-color: rgba(14, 92, 105, .13);
  background: rgba(255,255,255,.92);
  box-shadow: 0 12px 30px rgba(8,57,70,.055);
}

body.fc-useful-hub .fc-util-toc__label{
  color: rgba(5, 52, 65, .72);
  font-weight: 700 !important;
}

body.fc-useful-hub .fc-util-toc__link{
  min-height: 34px;
  padding: 8px 12px;
  border-color: rgba(14, 92, 105, .14);
  background: rgba(245,251,252,.88);
  color: rgba(5, 52, 65, .88) !important;
  font-weight: 700 !important;
}

body.fc-useful-hub .fc-util-toc__link.is-active,
body.fc-useful-hub .fc-util-toc__link[aria-current="page"]{
  background: linear-gradient(180deg, rgba(45,142,154,.16), rgba(45,142,154,.10));
  border-color: rgba(14, 92, 105, .27);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.72), 0 8px 18px rgba(8,57,70,.055);
}

body.fc-useful-hub .fc-useful-section{
  scroll-margin-top: 136px;
}

body.fc-useful-hub .fc-useful-section-head{
  margin-bottom: 14px;
}

body.fc-useful-hub .fc-util-section-title{
  max-width: 780px;
  letter-spacing: -.025em;
}

body.fc-useful-hub .fc-util-section-sub{
  max-width: 840px;
  line-height: 1.68;
}

body.fc-useful-hub .fc-useful-card-grid{
  gap: 14px;
}

body.fc-useful-hub .fc-useful-link-card,
body.fc-useful-hub .fc-useful-card-grid .fc-link-card{
  min-height: 100%;
  border-color: rgba(14, 92, 105, .13);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,252,253,.94));
  box-shadow: 0 12px 28px rgba(8,57,70,.04);
}

body.fc-useful-hub .fc-useful-link-card:hover,
body.fc-useful-hub .fc-useful-card-grid .fc-link-card:hover{
  transform: translateY(-1px);
  border-color: rgba(14, 92, 105, .22);
  box-shadow: 0 18px 36px rgba(8,57,70,.065);
}

body.fc-useful-hub .fc-link-card__title{
  color: rgba(5, 52, 65, .96);
  line-height: 1.28;
}

body.fc-useful-hub .fc-link-card__role,
body.fc-useful-hub .fc-link-card__desc{
  color: rgba(35, 75, 84, .75);
  line-height: 1.62;
}

body.fc-useful-hub .fc-link-list{
  gap: 8px;
}

body.fc-useful-hub .fc-link-list a{
  border-color: rgba(14, 92, 105, .13);
  background: rgba(246,251,252,.9);
  font-weight: 700;
}

body.fc-useful-hub .fc-official-chip{
  margin-left: 6px;
  border-color: rgba(14, 92, 105, .15);
  background: rgba(45,142,154,.09);
  font-weight: 700;
}

body.fc-useful-hub .fc-useful-continuation{
  margin-top: 26px;
  border-color: rgba(14, 92, 105, .13);
  background:
    radial-gradient(circle at 100% 0%, rgba(45,142,154,.10), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,252,253,.95));
  box-shadow: 0 16px 38px rgba(8,57,70,.045);
}

body.fc-useful-hub .fc-useful-continuation__head h2{
  max-width: 760px;
  letter-spacing: -.025em;
}

body.fc-useful-hub .fc-useful-continuation__head p{
  max-width: 880px;
  line-height: 1.68;
}

body.fc-useful-hub .fc-useful-continuation-card{
  border-color: rgba(14, 92, 105, .13);
  background: rgba(255,255,255,.80);
  box-shadow: 0 10px 24px rgba(8,57,70,.035);
}

body.fc-useful-hub .fc-useful-continuation-card:hover{
  transform: translateY(-1px);
  border-color: rgba(14, 92, 105, .22);
  box-shadow: 0 18px 34px rgba(8,57,70,.055);
}

body.fc-useful-hub .fc-useful-next{
  margin-top: 22px;
  border-color: rgba(14, 92, 105, .14);
  background: linear-gradient(135deg, rgba(239,249,251,.98), rgba(255,255,255,.96));
  box-shadow: 0 14px 32px rgba(8,57,70,.045);
}

body.fc-useful-hub .fc-useful-next p{
  line-height: 1.7;
}

body.fc-useful-hub .fc-useful-note{
  border-color: rgba(14, 92, 105, .13);
  background: rgba(246,251,252,.92);
  color: rgba(35, 75, 84, .72);
  line-height: 1.62;
}

@media (max-width: 820px){
  body.fc-useful-hub .fc-useful-toc{
    position: static;
    padding: 12px;
    box-shadow: 0 10px 24px rgba(8,57,70,.045);
  }

  body.fc-useful-hub .fc-util-toc__links{
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 2px;
    -webkit-overflow-scrolling: touch;
  }

  body.fc-useful-hub .fc-util-toc__link{
    flex: 0 0 auto;
    white-space: nowrap;
  }

  body.fc-useful-hub .fc-useful-hero,
  body.fc-useful-hub .fc-useful-continuation,
  body.fc-useful-hub .fc-useful-next{
    border-radius: 22px;
  }
}

@media (max-width: 520px){
  body.fc-useful-hub .fc-useful-hero{
    padding: 20px 16px;
  }

  body.fc-useful-hub .fc-useful-hero h1{
    font-size: clamp(1.74rem, 8vw, 2.05rem);
    line-height: 1.08;
  }

  body.fc-useful-hub .fc-useful-hero__meta{
    gap: 7px;
  }

  body.fc-useful-hub .fc-useful-hero__meta span{
    width: 100%;
    justify-content: center;
  }

  body.fc-useful-hub .fc-useful-section-action,
  body.fc-useful-hub .fc-useful-next__actions .btn{
    width: 100%;
    justify-content: center;
  }
}
