/* FlexiCare – Petrol polish (v6)
   Στόχος: 1) να εξαφανιστούν τελείως τα μωβ/visited & οι υπογραμμίσεις
          2) πιο “petrol” footer (όχι μαύρο)
          3) πιο αρμονικά μεγέθη/spacing σε footer + mobile κουμπιά
*/

:root{
  --petrol-950:#052b33;
  --petrol-900:#073540;
  --petrol-850:#0a404c;
  --petrol-800:#0e5160;
  --petrol-700:#156a7c;
  --petrol-600:#2f8f9e; /* κοντά στο brand */
}

/* Kill browser default link styling (μωβ/underline) */
a{ text-decoration: none !important; -webkit-tap-highlight-color: transparent; }
a:visited{ color: inherit !important; }
a:hover{ text-decoration: none !important; }
a:focus-visible{
  outline: 2px solid rgba(47,143,158,.55);
  outline-offset: 2px;
  border-radius: 10px;
}

/* Footer – petrol, όχι μαύρο */
.site-footer{
  background:
    radial-gradient(900px 420px at 18% 12%, rgba(47,143,158,.26), rgba(7,53,64,0) 62%),
    radial-gradient(700px 380px at 86% 24%, rgba(21,106,124,.18), rgba(7,53,64,0) 60%),
    linear-gradient(180deg, var(--petrol-800) 0%, var(--petrol-900) 58%, var(--petrol-950) 100%);
  color: rgba(255,255,255,.92);
  border-top: 1px solid rgba(255,255,255,.08);
}

/* Footer titles (ΧΡΗΣΙΜΑ, ΕΠΙΚΟΙΝΩΝΙΑ κλπ) */
.site-footer h4,
.site-footer .footer-title{
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 13px;
  font-weight: 800;
  color: rgba(255,255,255,.88);
  margin: 0 0 10px;
}

/* Footer links */
.site-footer a{ color: rgba(255,255,255,.88); }
.site-footer a:hover{ color: #fff; }

/* Footer chips/pills */
.site-footer .chip,
.site-footer .footer-chip,
.site-footer .footer-pill{
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.92);
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
}
.site-footer .chip:hover,
.site-footer .footer-chip:hover,
.site-footer .footer-pill:hover{
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.18);
}

/* Contact cards in footer */
.site-footer .contact-card,
.site-footer .contact-box,
.site-footer .contact-item{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 14px 30px rgba(0,0,0,.20);
}

/* WhatsApp / Viber buttons in footer */
.site-footer .contact-actions a,
.site-footer .contact-actions .btn,
.site-footer .contact-actions .pill{
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  color: rgba(255,255,255,.92);
}
.site-footer .contact-actions a:hover,
.site-footer .contact-actions .btn:hover,
.site-footer .contact-actions .pill:hover{
  background: rgba(255,255,255,.12);
}

/* Make footer typography feel “one system” on mobile */
@media (max-width: 820px){
    .site-footer .footer-grid{
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .site-footer h4,
  .site-footer .footer-title{
    font-size: 12px;
    letter-spacing: .16em;
  }
  .site-footer .contact-actions{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }
  .site-footer .contact-actions a,
  .site-footer .contact-actions .btn,
  .site-footer .contact-actions .pill{
    flex: 1 1 140px;
    justify-content: center;
  }
}

/* Make the “secondary button links” consistent (όχι underline) */
.btn.ghost, .btn.secondary{ text-decoration:none; }

/* Optional: unify tiny helper text color across light blocks */
.small{ color: rgba(15,23,42,.65); }
.site-footer .small{ color: rgba(255,255,255,.72); }

/* Kill legacy underline rule inside footer/cards from style.css */
footer a:hover,
.site-footer a:hover,
.card a:hover{
  text-decoration: none !important;
}

/* Mobile menu: no dark panels (petrol-light) */
@media (max-width: 980px){
  .nav-toggle{
    border-color: rgba(14,42,54,.22) !important;
    color: rgba(14,42,54,.92) !important;
    background: rgba(255,255,255,.75);
  }
  .menu{
    background: rgba(255,255,255,.98) !important;
    border: 1px solid rgba(47,143,158,.22) !important;
    box-shadow: 0 18px 44px rgba(6,24,32,.14);
  }
  .dropdown, .flyout{
    background: rgba(255,255,255,.96) !important;
    border: 1px solid rgba(47,143,158,.16) !important;
  }
  .dropdown a, .flyout a{
    color: rgba(14,42,54,.92) !important;
  }
}

/* Footer spacing harmony */
.site-footer .footer-grid{
  padding: 26px 0 16px !important;
}
.site-footer .footer-bottom{
  padding: 12px 0 !important;
}

/* WhatsApp/Viber: consistent height + better tap area */
.site-footer .contact-actions{ gap: 10px; }
.site-footer .contact-pill{
  min-height: 40px;
  padding: 9px 12px !important;
}

/* Hover “lock” for touch devices: μην κολλάει hover μετά το tap */
@media (hover: none) and (pointer: coarse){
  .site-footer a:hover{ color: rgba(255,255,255,.88) !important; }
  .site-footer .chip:hover,
  .site-footer .contact-pill:hover{ background: rgba(255,255,255,.07) !important; }
  .menu > li > a:hover{ background: transparent !important; }
}

/* ===== FlexiCare – Form polish (v27) ===== */
.fc-hp{ position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; opacity:0 !important; }
.is-hidden{ display:none !important; }

.fc-form .form-row{ grid-template-columns: 1fr 1fr; }
@media (max-width: 700px){
  .fc-form .form-row{ grid-template-columns: 1fr !important; }
}

.checkbox-row{ display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.checkbox-row input{ transform: translateY(1px); }

.fc-form .turnstile-wrap{ padding:10px 12px; border-radius:14px; border:1px solid rgba(15,23,42,.10); background:rgba(255,255,255,.8); }

/* Small UX: keep focus ring consistent */
.fc-form .input:focus, .fc-form .select:focus, .fc-form .textarea:focus{
  outline: 2px solid rgba(47,143,158,.35);
  outline-offset: 2px;
}

/* ===== FlexiCare – Form upgrade (v28) ===== */
.fc-quote{
  display:grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 16px;
  align-items:start;
}
@media (max-width: 980px){
  .fc-quote{ grid-template-columns: 1fr; }
}

.fc-form-card{
  padding: 18px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.85);
  box-shadow: 0 18px 44px rgba(6,24,32,.10);
}

.fc-summary{
  position: sticky;
  top: 92px;
}
@media (max-width: 980px){
  .fc-summary{ position: static; }
}

.fc-summary .fc-summary-box{
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(47,143,158,.18);
  background:
    radial-gradient(680px 360px at 18% 12%, rgba(47,143,158,.12), rgba(255,255,255,0) 60%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.82));
}

.fc-summary h3{
  margin: 0 0 10px;
  font-size: 16px;
  letter-spacing: .02em;
}

.fc-pill{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(47,143,158,.10);
  border: 1px solid rgba(47,143,158,.22);
  color: rgba(9,41,50,.92);
  font-weight: 800;
  font-size: 12px;
}

.fc-kv{ display:grid; gap:10px; }
.fc-kv .row{ display:flex; justify-content:space-between; gap:12px; }
.fc-kv .k{ color: rgba(11,18,32,.60); font-size: 12px; }
.fc-kv .v{ font-weight: 800; font-size: 12px; color: rgba(11,18,32,.92); text-align:right; }

.fc-step{
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed rgba(15,23,42,.12);
}

.fc-step-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
  margin: 0 0 10px;
  font-weight: 900;
  letter-spacing: .01em;
}

.fc-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: 28px;
  height: 28px;
  border-radius: 10px;
  background: rgba(47,143,158,.14);
  border: 1px solid rgba(47,143,158,.24);
  font-weight: 900;
}

.fc-help{
  color: rgba(11,18,32,.62);
  font-size: 12px;
  margin: 6px 0 0;
}

.fc-form .input, .fc-form .select, .fc-form .textarea{
  background: rgba(255,255,255,.92);
}

.fc-field{ position: relative; }
.fc-error{
  display:none;
  margin-top: 6px;
  color: #9b1c1c;
  font-size: 12px;
  font-weight: 800;
}
.fc-field.has-error .fc-error{ display:block; }
.fc-field.has-error .input,
.fc-field.has-error .select,
.fc-field.has-error .textarea{
  border-color: rgba(200,40,40,.45) !important;
  box-shadow: 0 0 0 4px rgba(200,40,40,.10);
}

.fc-top-chips{
  display:flex;
  gap: 8px;
  flex-wrap:wrap;
  margin-top: 10px;
}
.fc-top-chips button{
  appearance:none;
  border: 1px solid rgba(47,143,158,.22);
  background: rgba(255,255,255,.78);
  padding: 7px 10px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
}
.fc-top-chips button:hover{ background: rgba(47,143,158,.10); }

.fc-note{
  border-radius: 16px;
  padding: 12px 14px;
  border: 1px solid rgba(47,143,158,.18);
  background: rgba(47,143,158,.06);
}

/* Turnstile: keep it from looking like a random embed */
.fc-form .turnstile-wrap{
  display:flex;
  justify-content:center;
}

@media (max-width: 700px){
  .fc-form-card{ padding: 16px; }
}

/* ===== FlexiCare – Home featured cards (v29) ===== */
.home-featured-block{
  margin-top: 14px;
  padding: 14px;
  border-radius: 20px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.60);
  box-shadow: 0 18px 44px rgba(6,24,32,.06);
}

.home-featured-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  flex-wrap:wrap;
  margin-bottom: 12px;
}


/* Silent section links (Home: Ιδιώτες / Επιχειρήσεις) */
.fc-section-link{
  color: inherit !important;
  text-decoration: none !important;
  background: transparent !important;
  padding: 0;
  margin: 0;
  border-radius: 0;
  transition: opacity .12s ease;
}
.fc-section-link:hover,
.fc-section-link:active,
.fc-section-link:visited{
  color: inherit !important;
  background: transparent !important;
  opacity: .92;
}
.fc-section-link::after{ content: ""; display: none; }
.fc-section-link:focus-visible{
  outline: none;
  box-shadow: 0 0 0 3px rgba(47,143,158,.22);
  border-radius: 12px;
}


.home-featured-actions{
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
}

.home-featured-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

@media (max-width: 980px){
  .home-featured-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Mobile: single column (κάθετο scroll) */
@media (max-width: 640px){
  .home-featured-grid{ grid-template-columns: 1fr; }
}

.home-featured-card{
  display:flex;
  gap: 12px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.92);
  box-shadow: 0 14px 30px rgba(6,24,32,.08);
  color: inherit;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}

.home-featured-card:hover{
  transform: translateY(-1px);
  border-color: rgba(47,143,158,.28);
  box-shadow: 0 18px 44px rgba(6,24,32,.10);
}

.home-featured-icon{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(47,143,158,.14);
  border: 1px solid rgba(47,143,158,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.55);
  flex: 0 0 auto;
  font-size: 18px;
}

.home-featured-title{
  font-weight: 900;
  letter-spacing: -.01em;
  color: rgba(14,42,54,.95);
  margin-bottom: 4px;
}

.home-featured-text{
  color: rgba(15,23,42,.68);
  font-size: 13.5px;
  line-height: 1.35;
  margin-bottom: 10px;
  display:-webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow:hidden;
}

.home-featured-chips{
  display:flex;
  gap: 6px;
  flex-wrap:wrap;
}

.home-featured-chip{
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(47,143,158,.10);
  border: 1px solid rgba(47,143,158,.18);
  color: rgba(14,42,54,.86);
}

/* Touch devices: μην "κολλάει" hover */
@media (hover: none) and (pointer: coarse){
  .home-featured-card:hover{
    transform:none;
    border-color: rgba(15,23,42,.10);
    box-shadow: 0 14px 30px rgba(6,24,32,.08);
  }
}

/* ------------------------------------------------------------
   Premium line icons (thin stroke, corporate)
------------------------------------------------------------ */
.fc-card-icon,
.home-featured-icon,
.home-featured-icon-sm {
  color: rgba(14, 42, 54, 0.86);
}

.fc-card-icon svg,
.home-featured-icon svg,
.home-featured-icon-sm svg {
  width: 20px;
  height: 20px;
  stroke: currentColor;
  fill: none;
  vector-effect: non-scaling-stroke;
}

.fc-card-icon {
  background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(255,255,255,0.62));
  border: 1px solid rgba(12, 112, 118, 0.16);
}

.fc-card:hover .fc-card-icon {
  transform: translateY(-1px);
}

/* ------------------------------------------------------------
   v32 — Premium refinements (cards)
------------------------------------------------------------ */

/* Card description: 2-line clamp (keeps the grid clean) */
.fc-card-sub{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Make sure long details can actually breathe */
.fc-card.is-open .fc-card-details{
  max-height: 1400px;
}

/* Full chip list inside expanded details */
.fc-card-chiplist{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 2px 0 12px;
}
.fc-card-chiplist .fc-pill{
  background: rgba(8, 97, 108, 0.08);
  border-color: rgba(8, 97, 108, 0.16);
}

/* Keep icons consistently thin even if SVG files vary */
.fc-card-icon svg,
.home-featured-icon svg,
.home-featured-icon-sm svg{
  stroke-width: 1.75;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* ============================
   v33 – Premium service/product pages
   (used by /asfaleies/idiotes/<slug>, /asfaleies/epixeiriseis/<slug>, etc.)
   ============================ */

.fc-service{ padding-top: 26px; }

.fc-service-shell{
  padding: 18px 18px;
  border-radius: 22px;
  border: 1px solid rgba(15,23,42,.10);
  background:
    radial-gradient(800px 380px at 12% 8%, rgba(47,143,158,.12), rgba(255,255,255,0) 55%),
    radial-gradient(700px 280px at 95% 20%, rgba(10,109,122,.10), rgba(255,255,255,0) 60%),
    rgba(255,255,255,.92);
  box-shadow: 0 18px 40px rgba(6,24,32,.10);
}

.fc-service-head{
  display: flex;
  gap: 16px;
  align-items: flex-start;
  justify-content: space-between;
  padding: 6px 6px 14px;
  border-bottom: 1px solid rgba(15,23,42,.08);
}

.fc-service-main{ flex: 1; min-width: 0; }

.fc-service-titleRow{
  display: flex;
  align-items: center;
  gap: 10px;
}

.fc-service-icon{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(47,143,158,.22);
  background: rgba(47,143,158,.08);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.fc-service-icon svg{
  width: 22px;
  height: 22px;
  stroke: rgba(14,42,54,.82);
}

.fc-service-title{
  margin: 0;
  font-size: clamp(28px, 3.1vw, 42px);
  line-height: 1.1;
  letter-spacing: -0.02em;
}

.fc-service-lead{
  margin: 10px 0 0;
  max-width: 76ch;
  color: rgba(15,23,42,.72);
  font-size: 15px;
  line-height: 1.6;
}

.fc-service-aside{
  width: min(320px, 38%);
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 4px 0 0;
}

.fc-service-aside .btn{ width: 100%; justify-content: center; }

.fc-service-note{
  font-size: 12px;
  line-height: 1.45;
  color: rgba(15,23,42,.62);
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(255,255,255,.70);
}

.fc-service-body{ padding: 14px 6px 0; }

/* Premium rich sections -> cards */
.fc-info-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

@media (max-width: 860px){
  .fc-service-head{ flex-direction: column; }
  .fc-service-aside{ width: 100%; }
  .fc-info-grid{ grid-template-columns: 1fr; }
}

.fc-info-card{
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.92);
  box-shadow: 0 14px 30px rgba(6,24,32,.06);
  padding: 14px 14px;
}

.fc-info-card.fc-info-overview{
  grid-column: 1 / -1;
  background: rgba(255,255,255,.88);
}

.fc-info-h{
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  color: rgba(14,42,54,.78);
  margin-bottom: 10px;
}

.fc-info-c p{
  margin: 0 0 10px;
  color: rgba(15,23,42,.74);
  line-height: 1.6;
}

.fc-info-c p:last-child{ margin-bottom: 0; }

.fc-info-c ul{
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.fc-info-c li{
  position: relative;
  padding-left: 22px;
  color: rgba(15,23,42,.80);
  line-height: 1.45;
}

.fc-info-card.is-coverage .fc-info-c li:before{
  content: "";
  position: absolute;
  left: 0;
  top: .35em;
  width: 14px;
  height: 14px;
  border-radius: 4px;
  border: 1px solid rgba(47,143,158,.28);
  background: rgba(47,143,158,.10);
}

.fc-info-card.is-coverage .fc-info-c li:after{
  content: "";
  position: absolute;
  left: 4px;
  top: .58em;
  width: 6px;
  height: 3px;
  border-left: 2px solid rgba(14,42,54,.74);
  border-bottom: 2px solid rgba(14,42,54,.74);
  transform: rotate(-45deg);
}

.fc-info-card:not(.is-coverage) .fc-info-c li:before{
  content: "";
  position: absolute;
  left: 6px;
  top: .65em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(47,143,158,.35);
}

.fc-info-c strong{ color: rgba(14,42,54,.92); }

.fc-info-card.is-quote{
  border-color: rgba(47,143,158,.20);
  background:
    radial-gradient(520px 260px at 10% 10%, rgba(47,143,158,.10), rgba(255,255,255,0) 62%),
    rgba(255,255,255,.92);
}

/* Footer + disclaimer */
.fc-service-disclaimer{
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(255,255,255,.70);
  color: rgba(15,23,42,.62);
  font-size: 12px;
  line-height: 1.55;
}

.fc-service-footer{
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: flex-start;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(15,23,42,.08);
}

@media (max-width: 560px){
  .fc-service-footer{ flex-direction: column; align-items: stretch; }
  .fc-service-footer .btn{ width: 100%; justify-content: center; }
}

/* ============================
   v34 – Category grids (Idiotes / Epixeiriseis)
   Goal: same premium system as hero card (light/petrol, no black)
   ============================ */

.fc-cats{ margin-top: 14px; }

.fc-cats-toolbar{
  display:flex;
  flex-direction:column;
  gap: 10px;
  margin: 14px 0 14px;
}

.fc-cats-search input{
  width:100%;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.92);
  box-shadow: 0 14px 30px rgba(6,24,32,.06);
  font: inherit;
  color: rgba(14,42,54,.92);
}
.fc-cats-search input::placeholder{ color: rgba(15,23,42,.52); }
.fc-cats-search input:focus{
  outline: 2px solid rgba(47,143,158,.28);
  outline-offset: 2px;
}

.fc-chip-row{
  display:flex;
  gap: 8px;
  flex-wrap:wrap;
}

.fc-chip{
  appearance:none;
  border: 1px solid rgba(47,143,158,.22);
  background: rgba(255,255,255,.78);
  color: rgba(14,42,54,.92);
  padding: 8px 10px;
  border-radius: 999px;
  font-weight: 900;
  font-size: 12px;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.60);
  transition: transform .12s ease, background .12s ease, border-color .12s ease;
}

.fc-chip:hover{ background: rgba(47,143,158,.10); }

.fc-chip[aria-pressed="true"]{
  background: rgba(47,143,158,.16);
  border-color: rgba(47,143,158,.34);
}

.fc-cats-block{ margin-top: 14px; }

.fc-cats-block-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 10px;
  flex-wrap:wrap;
  margin-bottom: 10px;
}
.fc-cats-block-head h2{ margin: 0; }

.fc-cards{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
@media (max-width: 980px){
  .fc-cards{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .fc-cards{ grid-template-columns: 1fr; }
}

.fc-card{
  border-radius: 20px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.92);
  box-shadow: 0 16px 40px rgba(6,24,32,.08);
  overflow: hidden;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}

.fc-card:hover{
  transform: translateY(-1px);
  border-color: rgba(47,143,158,.26);
  box-shadow: 0 20px 54px rgba(6,24,32,.10);
}

.fc-card.is-featured{
  border-color: rgba(47,143,158,.22);
  background:
    radial-gradient(520px 280px at 12% 10%, rgba(47,143,158,.10), rgba(255,255,255,0) 60%),
    rgba(255,255,255,.94);
}

/* Button header */
.fc-card-top{
  width: 100%;
  text-align: left;
  padding: 14px;
  background: transparent;
  border: 0;
  cursor: pointer;
  display:flex;
  align-items:flex-start;
  gap: 12px;
}

/* Icon badge */
.fc-card-icon{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex: 0 0 auto;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.58);
}

.fc-card-main{
  display:flex;
  flex-direction:column;
  gap: 6px;
  flex: 1;
  min-width: 0;
}

.fc-card-title{
  font-weight: 950;
  letter-spacing: -.01em;
  color: rgba(14,42,54,.96);
  font-size: 18px;
  line-height: 1.2;
}

.fc-card-sub{
  font-size: 14px;
  line-height: 1.45;
  color: rgba(15,23,42,.70);
}

/* 3 bullet highlights (checkmarks) */
.fc-card-bullets{
  list-style:none;
  margin: 2px 0 0;
  padding: 0;
  display:grid;
  gap: 6px;
  font-size: 13px;
}

.fc-card-bullets li{
  position: relative;
  padding-left: 22px;
  color: rgba(15,23,42,.84);
  line-height: 1.35;
}

.fc-card-bullets li:before{
  content: "";
  position: absolute;
  left: 0;
  top: .18em;
  width: 14px;
  height: 14px;
  border-radius: 4px;
  border: 1px solid rgba(47,143,158,.30);
  background: rgba(47,143,158,.10);
}

.fc-card-bullets li:after{
  content: "";
  position: absolute;
  left: 4px;
  top: .44em;
  width: 6px;
  height: 3px;
  border-left: 2px solid rgba(14,42,54,.74);
  border-bottom: 2px solid rgba(14,42,54,.74);
  transform: rotate(-45deg);
}

/* Chips row: max 3 +N */
.fc-card-chips{
  display:flex;
  flex-wrap:wrap;
  gap: 6px;
  margin-top: 4px;
}

.fc-card-chips .fc-pill{
  padding: 5px 8px;
  font-size: 12px;
}

.fc-pill.is-more{
  background: rgba(15,23,42,.06);
  border-style: dashed;
  border-color: rgba(15,23,42,.16);
  color: rgba(14,42,54,.86);
}

/* Chevron */
.fc-card-chevron{
  width: 32px;
  height: 32px;
  border-radius: 12px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(63,107,134,.06);
  display:flex;
  align-items:center;
  justify-content:center;
  flex: 0 0 auto;
  transition: background .12s ease, border-color .12s ease;
}

.fc-card-chevron:before{
  content: "▾";
  font-size: 14px;
  color: rgba(14,42,54,.78);
  display:block;
  transform: rotate(0deg);
  transition: transform .16s ease;
}

.fc-card.is-open .fc-card-chevron:before{ transform: rotate(180deg); }

/* Expand area */
.fc-card-details{
  max-height: 0;
  overflow: hidden;
  transition: max-height .22s ease;
}

.fc-card.is-open .fc-card-details{ max-height: 1400px; }

.fc-card-body{
  padding: 14px;
  border-top: 1px solid rgba(15,23,42,.08);
  background:
    radial-gradient(520px 260px at 12% 10%, rgba(47,143,158,.08), rgba(255,255,255,0) 62%),
    rgba(255,255,255,.92);
}

.fc-card-actions{
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
  margin-top: 12px;
}

@media (max-width: 560px){
  .fc-card-actions{ flex-direction: column; }
  .fc-card-actions .btn{ width: 100%; justify-content: center; }
}

/* Typography scale for small screens */
@media (max-width: 640px){
  .fc-card-title{ font-size: 16px; }
  .fc-card-sub{ font-size: 13px; }
  .fc-card-bullets{ font-size: 13px; }
}

/* Expanded content: 2 premium panels */
.fc-panels{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
@media (max-width: 860px){
  .fc-panels{ grid-template-columns: 1fr; }
}

.fc-panel{
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.92);
  box-shadow: 0 14px 30px rgba(6,24,32,.06);
  padding: 14px;
}

.fc-panel.is-accent{
  border-color: rgba(47,143,158,.20);
  background:
    radial-gradient(520px 260px at 10% 10%, rgba(47,143,158,.10), rgba(255,255,255,0) 62%),
    rgba(255,255,255,.92);
}

.fc-panel-h{
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  color: rgba(14,42,54,.78);
  margin-bottom: 10px;
}

.fc-panel-c p{
  margin: 0 0 10px;
  color: rgba(15,23,42,.74);
  line-height: 1.6;
}
.fc-panel-c p:last-child{ margin-bottom: 0; }
.fc-panel-c ul{
  list-style:none;
  margin: 8px 0 0;
  padding: 0;
  display: grid;
  gap: 8px;
}
.fc-panel-c li{
  position: relative;
  padding-left: 20px;
  color: rgba(15,23,42,.80);
  line-height: 1.45;
}
.fc-panel-c li:before{
  content: "";
  position: absolute;
  left: 6px;
  top: .62em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(47,143,158,.35);
}

.fc-panel-block + .fc-panel-block{ margin-top: 12px; }

.fc-panel-sub{
  font-weight: 950;
  font-size: 13px;
  color: rgba(14,42,54,.92);
  margin-bottom: 6px;
}

.fc-panel-body{ color: rgba(15,23,42,.74); }
.fc-panel-body ul li:before{
  left: 0;
  top: .35em;
  width: 14px;
  height: 14px;
  border-radius: 4px;
  border: 1px solid rgba(47,143,158,.28);
  background: rgba(47,143,158,.10);
}
.fc-panel-body ul li:after{
  content: "";
  position: absolute;
  left: 4px;
  top: .58em;
  width: 6px;
  height: 3px;
  border-left: 2px solid rgba(14,42,54,.74);
  border-bottom: 2px solid rgba(14,42,54,.74);
  transform: rotate(-45deg);
}

/* Special section (collapsible) */
.fc-special{
  margin-top: 14px;
  border-radius: 20px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.70);
  box-shadow: 0 18px 44px rgba(6,24,32,.06);
  overflow: hidden;
}

.fc-special summary{
  cursor: pointer;
  padding: 14px;
  display:flex;
  flex-direction:column;
  gap: 4px;
  list-style: none;
}
.fc-special summary::-webkit-details-marker{ display:none; }

.fc-special-title{
  font-weight: 950;
  color: rgba(14,42,54,.96);
}

.fc-special-body{ padding: 0 14px 14px; }

.fc-page-disclaimer{
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(255,255,255,.70);
  color: rgba(15,23,42,.62);
  line-height: 1.55;
}
/* ===== Premium upgrades for /asfaleies landing (cards + chips + icons) ===== */
.asfaleies-landing .fc-h1{ color: rgba(14,42,54,.96); letter-spacing: -.02em; }
.asfaleies-landing .fc-subhead{ max-width: 62ch; color: rgba(15,23,42,.66); }

.fc-hero-card .fc-card-top{ padding: 16px 16px 10px; }
.fc-hero-body{ padding: 0 16px 16px; }
.fc-hero-actions{
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
  margin-top: 14px;
}
@media (max-width: 560px){
  .fc-hero-actions{ flex-direction: column; }
  .fc-hero-actions .btn{ width: 100%; justify-content:center; }
}

/* Chip as link + inline icon */
.fc-chip{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  text-decoration:none;
}
a.fc-chip:visited{ color: rgba(14,42,54,.92); }
.fc-chip-ico{
  width: 18px;
  height: 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  opacity: .90;
}
.fc-chip svg{
  width: 16px;
  height: 16px;
  stroke: currentColor;
  fill: none;
  vector-effect: non-scaling-stroke;
}

/* Make chips breathe a bit more on landing */
.fc-hero-chips{ gap: 10px; }
.fc-hero-chips .fc-chip{ padding: 9px 11px; font-weight: 800; }
@media (max-width: 640px){
  .fc-hero-chips .fc-chip{ padding: 8px 10px; font-size: 12px; }
}

/* ============================================================
   v36 — Ultra premium polish (ink colors + glossy “shine”)
   Στόχος: 1) μηδέν μαύρο (όλα petrol-ink) 2) περισσότερη λάμψη
   χωρίς να γίνει “φτηνό glassmorphism”.
   ============================================================ */

:root{
  /* Petrol ink typography */
  --fc-ink:#0B2E33;     /* primary text (no black) */
  --fc-ink-2:#123C43;   /* slightly lighter */
  --fc-muted:#4E6B70;   /* secondary text */
  --fc-muted-2:#6B8790; /* helper */

  /* Lines + glow */
  --fc-line: rgba(12,112,118,.18);
  --fc-line-2: rgba(12,112,118,.26);
  --fc-glow: rgba(47,143,158,.12);

  /* Shadows */
  --fc-shadow: rgba(5,43,51,.12);
  --fc-shadow-2: rgba(5,43,51,.16);

  /* Override site tokens from style.css (global no-black) */
  --text: var(--fc-ink);
  --muted: var(--fc-muted);
  --line: var(--fc-line);
}

html, body{ color: var(--fc-ink) !important; }

/* Headings & common text (keeps consistency across templates) */
h1,h2,h3,h4,.h1,.h2,.h3{ color: var(--fc-ink) !important; }
.small{ color: var(--fc-muted) !important; }
.section-head p,
.fc-subhead,
.fc-card-sub,
.fc-panel-c p,
.fc-service-lead{
  color: var(--fc-muted) !important;
}

/* ------------------------------------------------------------
   Glossy premium cards (subtle shine + better shadow)
------------------------------------------------------------ */

/* Base: make cards slightly more “alive” */
.fc-card,
.fc-panel,
.home-featured-card,
.fc-service-shell,
.home-featured-block,
.fc-special{
  border-color: var(--fc-line) !important;
  box-shadow: 0 22px 70px var(--fc-shadow) !important;
}

/* Rich background gradient (no grey/flat) */
.fc-card,
.fc-panel,
.home-featured-card,
.fc-service-shell{
  background:
    radial-gradient(980px 420px at 12% 6%, rgba(47,143,158,.12), rgba(255,255,255,0) 58%),
    radial-gradient(760px 360px at 92% 12%, rgba(21,106,124,.08), rgba(255,255,255,0) 62%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.88)) !important;
}

/* The “shine” layer */
.fc-card,
.fc-panel,
.home-featured-card,
.fc-service-shell{
  position: relative;
}
.fc-card::after,
.fc-panel::after,
.home-featured-card::after,
.fc-service-shell::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius: inherit;
  background:
    linear-gradient(115deg, rgba(255,255,255,.75), rgba(255,255,255,0) 42%),
    radial-gradient(720px 260px at 18% 0%, rgba(255,255,255,.55), rgba(255,255,255,0) 62%);
  opacity:.70;
}

/* Keep content above shine */
.fc-card-top, .fc-hero-body, .fc-card-body,
.fc-panel > *,
.home-featured-card > *,
.fc-service-head, .fc-service-body{ position: relative; z-index: 1; }

/* Hover: more premium lift + soft glow ring */
@media (hover:hover) and (pointer:fine){
  .fc-card:hover,
  .home-featured-card:hover{
    transform: translateY(-2px);
    border-color: var(--fc-line-2) !important;
    box-shadow:
      0 28px 90px var(--fc-shadow-2),
      0 0 0 6px rgba(47,143,158,.06) !important;
  }
}

/* ------------------------------------------------------------
   Icon badges (more premium, less flat)
------------------------------------------------------------ */

.fc-card-icon,
.home-featured-icon,
.fc-service-icon{
  border-color: rgba(12,112,118,.22) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(47,143,158,.10)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.88),
    0 16px 34px rgba(5,43,51,.10) !important;
}

.fc-card-icon svg,
.fc-chip svg,
.fc-service-icon svg{
  stroke: rgba(12,112,118,.92) !important;
}

/* ------------------------------------------------------------
   Chips (more premium + consistent petrol-ink text)
------------------------------------------------------------ */

.fc-chip{
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(47,143,158,.05)) !important;
  border-color: rgba(12,112,118,.22) !important;
  color: var(--fc-ink-2) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.90),
    0 12px 26px rgba(5,43,51,.06);
}

@media (hover:hover) and (pointer:fine){
  .fc-chip:hover{
    transform: translateY(-1px);
    border-color: rgba(12,112,118,.34) !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,.94), rgba(47,143,158,.10)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.92),
      0 16px 34px rgba(5,43,51,.08);
  }
}

/* ------------------------------------------------------------
   Buttons (primary + ghost πιο “lux”)
------------------------------------------------------------ */

/* Base */
.btn{ border-radius: 14px !important; position:relative; overflow:hidden; transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease; will-change: transform; }

/* Primary = πιο ανοιχτό petrol + white text + subtle sheen */
.btn.primary{
  background: linear-gradient(180deg, rgba(112,210,219,1), rgba(47,143,158,1)) !important;
  border: 1px solid rgba(7,53,64,.08) !important;
  color: rgba(255,255,255,.96) !important;
  font-weight: 800 !important;
  text-shadow: 0 1px 0 rgba(5,43,51,.22);
  box-shadow:
    0 18px 44px rgba(5,43,51,.18),
    inset 0 1px 0 rgba(255,255,255,.34) !important;
}

.btn.primary::before{
  content:"";
  position:absolute;
  inset:-2px -20% auto -20%;
  height: 60%;
  background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.26), rgba(255,255,255,0));
  transform: rotate(-8deg);
  pointer-events:none;
}

@media (hover:hover) and (pointer:fine){
  .btn.primary:hover{
    transform: translateY(-1px);
    box-shadow:
      0 22px 58px rgba(5,43,51,.20),
      inset 0 1px 0 rgba(255,255,255,.32) !important;
  }
}

/* Ghost = secondary action (light petrol tint) */
.btn.ghost{
  background:
    linear-gradient(180deg, rgba(47,143,158,.11), rgba(47,143,158,.045)) !important;
  border-color: rgba(12,112,118,.22) !important;
  color: rgba(7,53,64,.90) !important;
  font-weight: 800 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.86),
    0 14px 30px rgba(5,43,51,.10),
    0 0 0 1px rgba(47,143,158,.10) !important;
}

.btn.ghost::before{
  content:"";
  position:absolute;
  inset:-2px -25% auto -25%;
  height: 58%;
  background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.22), rgba(255,255,255,0));
  transform: rotate(-8deg);
  pointer-events:none;
}

@media (hover:hover) and (pointer:fine){
  .btn.ghost:hover{
    transform: translateY(-1px);
    border-color: rgba(12,112,118,.38) !important;
    background:
      linear-gradient(180deg, rgba(47,143,158,.18), rgba(47,143,158,.08)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.92),
      0 18px 44px rgba(5,43,51,.12),
      0 0 0 1px rgba(47,143,158,.14) !important;
  }
}

/* ------------------------------------------------------------
   Card typography tweaks (less “shouty”, still strong)
------------------------------------------------------------ */

.fc-card-title{ font-weight: 800 !important; color: var(--fc-ink) !important; }
.fc-card-sub{ color: var(--fc-muted) !important; }
.fc-card-bullets li{ color: rgba(11,46,51,.86) !important; }

/* Checks: petrol-ink instead of near-black */
.fc-card-bullets li:after,
.fc-panel-body ul li:after,
.fc-info-card.is-coverage .fc-info-c li:after{
  border-left-color: rgba(11,46,51,.72) !important;
  border-bottom-color: rgba(11,46,51,.72) !important;
}

/* Landing head */
.asfaleies-landing .fc-h1{ color: var(--fc-ink) !important; }
.asfaleies-landing .fc-subhead{ color: var(--fc-muted) !important; }




/* ===== Premium Typography – Expanded panels (v40) =====
   Στόχος: η ανάπτυξη (Με μια ματιά / Τι καλύπτει) να έχει ίδια ιεραρχία με τις κάρτες:
   title 18/16, description 14/13, bullets ~13, chips 12, χωρίς μαύρο.
*/
:root{
  --fc-ink: rgba(10,64,76,.96);   /* petrol-ink */
  --fc-muted: rgba(10,64,76,.72);
  --fc-soft: rgba(10,64,76,.60);
}

/* Panel headings */
.fc-panel-h{
  color: rgba(10,64,76,.78) !important;
}

/* Panel content base */
.fc-panel-c{
  font-size: 14px;
  color: var(--fc-muted);
}

/* Paragraphs */
.fc-panel-c p{
  color: var(--fc-muted) !important;
  font-size: 14px;
  line-height: 1.58;
}
.fc-panel-c p.small{
  font-size: 13px;
  color: var(--fc-soft) !important;
}

/* Subheadings coming from catalog HTML (h3/h4) */
.fc-panel-c h3,
.fc-panel-c h4{
  margin: 12px 0 8px;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: -.01em;
  color: var(--fc-ink);
}
.fc-panel-c h3:first-child,
.fc-panel-c h4:first-child{ margin-top: 0; }

/* Lists */
.fc-panel-c ul{ gap: 8px; margin-top: 10px; }
.fc-panel-c li{
  font-size: 13px;
  color: rgba(10,64,76,.86) !important;
  line-height: 1.42;
}
.fc-panel-c li:before{ background: rgba(47,143,158,.42) !important; }

/* Inline emphasis */
.fc-panel-c strong{
  color: var(--fc-ink);
  font-weight: 950;
}

/* Links inside expanded content */
.fc-panel-c a{
  color: rgba(21,106,124,.92);
  font-weight: 850;
}
.fc-panel-c a:hover{ color: var(--petrol-600); }

/* Mobile scale (keeps it tight) */
@media (max-width: 920px){
  .fc-panel-c{ font-size: 13px; }
  .fc-panel-c p{ font-size: 13px; }
  .fc-panel-c li{ font-size: 12.8px; }
}


/* Compatibility: if a page uses .fc-panel-body instead of .fc-panel-c */
.fc-panel-body{ color: var(--fc-muted) !important; font-size: 14px; }
.fc-panel-body p{ color: var(--fc-muted) !important; font-size: 14px; line-height: 1.58; }
.fc-panel-body h3, .fc-panel-body h4{ color: var(--fc-ink) !important; font-size: 13px; font-weight: 950; margin: 12px 0 8px; }
.fc-panel-body li{ color: rgba(10,64,76,.86) !important; font-size: 13px; line-height: 1.42; }
@media (max-width: 920px){
  .fc-panel-body{ font-size: 13px; }
  .fc-panel-body p{ font-size: 13px; }
  .fc-panel-body li{ font-size: 12.8px; }
}

/* ===== Premium Header distribution + CTA polish (v42) ===== */
@media (min-width: 981px){
  /* 3-column header: brand | centered menu | CTA */
  .site-header .header-row{
    display: grid !important;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    column-gap: 18px !important;
  }

  .site-header .brand{ justify-self: start; }
  .site-header .header-cta{ justify-self: end; }

  /* Center menu and make spacing uniform */
  .site-header .nav{
    width: 100%;
    justify-content: center !important;
  }
  .site-header .menu{
    justify-content: center !important;
    gap: 14px !important;
  }
  .site-header .menu > li > a{
    padding: 10px 14px !important;
    border-radius: 14px !important;
    color: rgba(10,64,76,.92) !important; /* petrol-ink (no black) */
    letter-spacing: .1px;
  }
  .site-header .menu > li > a.active{
    background: rgba(47,143,158,.10) !important;
    border: 1px solid rgba(47,143,158,.18) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.82);
  }
  .site-header .menu > li > a:hover{
    background: rgba(47,143,158,.08) !important;
  }
}

/* Header CTA button: better fit + icon harmony */
.site-header .header-cta-btn{
  padding: 10px 14px !important;
  border-radius: 16px !important;
}
.site-header .header-cta-btn .btn-ico{
  opacity: .92;
  transform: translateY(.5px);
}
@media (hover:hover) and (pointer:fine){
  .site-header .header-cta-btn:hover .btn-ico{ opacity: 1; }
}

/* ===== Header refine (v43) — uniform spacing + premium CTA ===== */
@media (min-width: 981px){
  /* slightly more even spacing that scales with viewport */
  .site-header .header-row{ column-gap: clamp(16px, 2vw, 26px) !important; }
  .site-header .menu{ gap: clamp(12px, 1.6vw, 22px) !important; }

  /* prevent “active” from changing layout: always reserve border */
  .site-header .menu > li > a{
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    line-height: 1.05 !important;
    background: transparent !important;
  }
  .site-header .menu > li > a:hover{
    background: rgba(47,143,158,.07) !important;
    border-color: rgba(47,143,158,.14) !important;
  }
  .site-header .menu > li > a.active{
    background: rgba(47,143,158,.09) !important;
    border-color: rgba(47,143,158,.22) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.86),
      0 12px 26px rgba(6,24,32,.07) !important;
  }
}

/* Make the header CTA feel “petrol premium” (tinted + sheen) */
.site-header .header-cta-btn{
  position: relative;
  background: rgba(47,143,158,.10) !important;
  border-color: rgba(47,143,158,.24) !important;
  color: rgba(7,53,64,.94) !important;
  box-shadow: 0 12px 28px rgba(6,24,32,.10);
  overflow: hidden;
}
.site-header .header-cta-btn::before{
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(120px 60px at 22% 18%, rgba(255,255,255,.78), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.52), rgba(255,255,255,0));
  opacity: .55;
  pointer-events: none;
}
.site-header .header-cta-btn > *{ position: relative; z-index: 1; }
@media (hover:hover) and (pointer:fine){
  .site-header .header-cta-btn:hover{
    background: rgba(47,143,158,.13) !important;
    border-color: rgba(47,143,158,.30) !important;
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(6,24,32,.12);
  }
}

/* ===== Header align + uniform pills (v44) ===== */
@media (min-width: 981px){
  /* True visual centering: left/right columns equal (brand | menu | CTA) */
  .site-header .header-row{
    grid-template-columns: 1fr auto 1fr !important;
  }
  .site-header .brand{ justify-self: start !important; }
  .site-header .nav{ width: auto !important; justify-self: center !important; }
  .site-header .header-cta{ justify-self: end !important; }

  /* Give ALL menu items the same “pill” base so active doesn’t look like a different component */
  .site-header .menu > li > a{
    padding: 10px 14px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(47,143,158,.12) !important;
    background: rgba(47,143,158,.045) !important;
    color: rgba(9,55,66,.92) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.78);
    transition: transform .14s ease, background .14s ease, border-color .14s ease, box-shadow .14s ease;
  }
  .site-header .menu > li > a:hover{
    background: rgba(47,143,158,.075) !important;
    border-color: rgba(47,143,158,.18) !important;
    transform: translateY(-1px);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.84), 0 12px 26px rgba(6,24,32,.06);
  }
  .site-header .menu > li > a.active{
    background: rgba(47,143,158,.11) !important;
    border-color: rgba(47,143,158,.26) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.88),
      0 16px 34px rgba(6,24,32,.08) !important;
  }

  /* Make dropdown caret calmer */
  .site-header .menu > li.has-children > a:after{
    font-size: 11px !important;
    opacity: .75 !important;
    transform: translateY(1px);
  }
}


/* ============================================================
   v46 — Typography System (Premium, calm, professional)
   Στόχος: λιγότερη ‘φασαρία’ στο μάτι.
   1) 1 ενιαία κλίμακα γραμματοσειρών 2) μετριασμένα βάρη 3) σωστά line-heights
   ============================================================ */

:root{
  --fc-font: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Arial;
  --fc-fs-body: 15px;
  --fc-fs-small: 13px;
  --fc-fs-chip: 12px;
  --fc-fs-h3: 16px;
  --fc-fs-h2: 24px;
  --fc-fs-h1: clamp(28px, 2.6vw, 38px);
  --fc-lh-body: 1.62;
  --fc-lh-tight: 1.18;
}

html{
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  text-rendering: optimizeLegibility;
}

body{
  font-family: var(--fc-font) !important;
  font-size: var(--fc-fs-body) !important;
  line-height: var(--fc-lh-body) !important;
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Headings: less shouty, more ‘executive’ */
h1,h2,h3,h4{
  font-family: var(--fc-font) !important;
  letter-spacing: -0.015em;
}

h1{ font-size: var(--fc-fs-h1) !important; line-height: 1.08; font-weight: 800 !important; }
h2{ font-size: var(--fc-fs-h2) !important; line-height: 1.18; font-weight: 800 !important; }
h3{ font-size: var(--fc-fs-h3) !important; line-height: 1.22; font-weight: 750 !important; }

p, li{ color: var(--fc-muted) !important; }

/* Buttons: consistent, calmer */
.btn{
  font-family: var(--fc-font) !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  letter-spacing: .1px;
}

/* Header nav: reduce visual noise */
@media (min-width: 981px){
  .site-header .menu{ gap: clamp(10px, 1.3vw, 18px) !important; }
  .site-header .menu > li > a{
    font-size: 14px !important;
    font-weight: 700 !important;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
  }
  .site-header .menu > li > a:hover{
    background: rgba(47,143,158,.06) !important;
    border-color: rgba(47,143,158,.14) !important;
    box-shadow: none !important;
  }
  .site-header .menu > li > a.active{
    background: rgba(47,143,158,.10) !important;
    border-color: rgba(47,143,158,.22) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.88) !important;
  }
}

/* Hero (Home): reduce ‘κραυγή’ + unify colors */
.hero2-brand{
  font-size: clamp(30px, 2.4vw, 38px) !important;
  font-weight: 850 !important;
  color: var(--fc-ink) !important;
}
.hero2-sub{
  font-size: clamp(18px, 1.7vw, 24px) !important;
  font-weight: 750 !important;
  color: var(--fc-ink-2) !important;
  line-height: var(--fc-lh-tight) !important;
  max-width: 34ch;
}
.hero2-text{
  font-size: 14px !important;
  line-height: 1.66 !important;
  color: var(--fc-muted) !important;
  max-width: 62ch;
}
.hero2-note{ color: var(--fc-muted-2) !important; }

.hero2-step-title{
  font-size: 14px !important;
  font-weight: 800 !important;
  color: var(--fc-ink) !important;
}
.hero2-step-text{ font-size: 13px !important; color: var(--fc-muted) !important; }

/* Section titles / helper text */
.section-head p{ font-size: var(--fc-fs-small) !important; color: var(--fc-muted) !important; }

/* Home ‘Γιατί FlexiCare’ cards */
.section .card h3{ font-size: 15px !important; font-weight: 800 !important; }
.section .card p{ font-size: 13px !important; line-height: 1.56 !important; }

/* Featured cards (Home) */
.home-featured-title{ font-size: 15px !important; font-weight: 800 !important; color: var(--fc-ink) !important; }
.home-featured-text{ font-size: 13px !important; line-height: 1.52 !important; color: var(--fc-muted) !important; }
.home-featured-chip{ font-size: var(--fc-fs-chip) !important; font-weight: 700 !important; }

/* Catalog cards (Idiotes/Epixeiriseis) */
.fc-card-title{ font-size: 16px !important; font-weight: 850 !important; }
.fc-card-desc{ font-size: 13.5px !important; line-height: 1.5 !important; color: var(--fc-muted) !important; }
.fc-card-bullets li{ font-size: 13px !important; line-height: 1.44 !important; }
.fc-card-chips .chip{ font-size: var(--fc-fs-chip) !important; font-weight: 700 !important; }

/* Expanded panels typography: keep it compact and readable */
.fc-panel-c{ font-size: 14px !important; line-height: 1.62 !important; }
.fc-panel-c p{ font-size: 14px !important; }
.fc-panel-c li{ font-size: 13px !important; }

@media (max-width: 920px){
  body{ font-size: 14.5px !important; }
  .hero2-text{ font-size: 13.5px !important; }
  .fc-card-desc{ font-size: 13px !important; }
}

/* ============================================================
   v47 — Header menu: calm premium links (no ‘button parade’)
   Στόχος: το menu να φαίνεται σοβαρό/επαγγελματικό, όχι σειρά από κουμπιά.
   ============================================================ */
@media (min-width: 981px){
  .site-header .menu{ gap: clamp(12px, 1.4vw, 20px) !important; }

  /* turn pills into calm links with subtle active indicator */
  .site-header .menu > li > a{
    padding: 10px 10px !important;
    border-radius: 12px !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    box-shadow: none !important;
    position: relative;
  }

  .site-header .menu > li > a::after{
    content: "";
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 6px;
    height: 2px;
    border-radius: 2px;
    background: rgba(47,143,158,0);
    opacity: 0;
    transform: translateY(2px);
    transition: opacity .14s ease, background .14s ease, transform .14s ease;
    pointer-events: none;
  }

  .site-header .menu > li > a:hover{
    background: rgba(47,143,158,.05) !important;
    border-color: rgba(47,143,158,.10) !important;
  }
  .site-header .menu > li > a:hover::after{
    opacity: .55;
    background: rgba(47,143,158,.55);
    transform: translateY(0);
  }

  .site-header .menu > li > a.active{
    background: rgba(47,143,158,.08) !important;
    border-color: rgba(47,143,158,.18) !important;
  }
  .site-header .menu > li > a.active::after{
    opacity: .90;
    background: rgba(47,143,158,.72);
    transform: translateY(0);
  }

  /* calmer caret */
  .site-header .menu > li.has-children > a:after{
    opacity: .70 !important;
    transform: translateY(1px);
  }
}

/* Kill any dev/staging notes if they ever reappear */
.dev-note, .staging-note, [data-env="staging"]{ display:none !important; }


/* =========================================================
   Cookie consent (v55) – calm premium (petrol / light)
   ========================================================= */
.fc-cookie{
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: 12px;
  z-index: 9999;
  font-family: inherit;
}
.fc-cookie[hidden]{ display:none !important; }

.fc-cookie__bar{
  max-width: 1120px;
  margin: 0 auto;
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;

  background: rgba(255,255,255,.82);
  border: 1px solid rgba(47,143,158,.18);
  box-shadow: 0 18px 50px rgba(5,43,51,.18);
  border-radius: 18px;
  padding: 14px 16px;

  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.fc-cookie__text{ min-width: 0; }
.fc-cookie__title{
  color: var(--petrol-900);
  font-weight: 800;
  letter-spacing: -.01em;
  font-size: 14px;
  margin-bottom: 4px;
}
.fc-cookie__desc{
  margin: 0;
  color: rgba(7,53,64,.78);
  font-size: 13px;
  line-height: 1.35;
  max-width: 64ch;
}
.fc-cookie__desc strong{ color: rgba(7,53,64,.92); font-weight: 800; }
.fc-cookie__meta{
  display:flex;
  gap: 12px;
  align-items:center;
  margin-top: 8px;
  font-size: 12px;
}
.fc-cookie__meta-link{
  color: rgba(21,106,124,.92);
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  font: inherit;
}
.fc-cookie__meta-link:hover{ color: rgba(47,143,158,.98); }

.fc-cookie__actions{
  display:flex;
  gap: 10px;
  align-items:center;
  flex-shrink: 0;
}

/* Buttons (standalone to avoid dependencies) */
.fc-btn{
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 999px;
  height: 38px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: 800;
  font-size: 13px;
  line-height: 1;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}

.fc-btn--primary{
  color: rgba(255,255,255,.98);
  background:
    linear-gradient(135deg, rgba(47,143,158,1) 0%, rgba(21,106,124,1) 55%, rgba(14,81,96,1) 100%);
  box-shadow: 0 14px 34px rgba(47,143,158,.24);
}
.fc-btn--ghost{
  color: rgba(7,53,64,.92);
  background: rgba(47,143,158,.10);
  border-color: rgba(47,143,158,.18);
}
.fc-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 46px rgba(5,43,51,.14);
}
.fc-btn:active{ transform: translateY(0); }
.fc-btn:focus-visible{
  outline: 2px solid rgba(47,143,158,.55);
  outline-offset: 2px;
}

/* Settings panel */
.fc-cookie__panel{
  max-width: 1120px;
  margin: 10px auto 0;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(47,143,158,.16);
  border-radius: 18px;
  box-shadow: 0 18px 60px rgba(5,43,51,.16);
  padding: 14px 14px 12px;

  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.fc-cookie__panel[hidden]{ display:none !important; }

.fc-cookie__panelgrid{
  display: grid;
  gap: 10px;
}
.fc-cookie__panelnote{
  padding: 8px 10px 6px;
}
.fc-cookie__paneltitle{
  font-weight: 900;
  color: rgba(7,53,64,.92);
  font-size: 13px;
  margin-bottom: 2px;
}
.fc-cookie__paneldesc{
  color: rgba(7,53,64,.70);
  font-size: 12.5px;
}

.fc-cookie__row{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 10px;
  border-radius: 14px;
  border: 1px solid rgba(47,143,158,.12);
  background: rgba(255,255,255,.70);
}
.fc-cookie__rowcopy{ min-width: 0; }
.fc-cookie__rowtitle{
  font-weight: 900;
  color: rgba(7,53,64,.90);
  font-size: 13px;
  margin-bottom: 2px;
}
.fc-cookie__rowdesc{
  color: rgba(7,53,64,.68);
  font-size: 12.5px;
  line-height: 1.35;
}

.fc-cookie__fixed{
  font-weight: 900;
  font-size: 12px;
  color: rgba(21,106,124,.92);
  background: rgba(47,143,158,.12);
  border: 1px solid rgba(47,143,158,.18);
  padding: 7px 10px;
  border-radius: 999px;
  flex-shrink: 0;
}

/* Toggle */
.fc-toggle{
  cursor: pointer;
}
.fc-toggle__input{
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.fc-toggle__ui{
  width: 46px;
  height: 26px;
  border-radius: 999px;
  border: 1px solid rgba(47,143,158,.22);
  background: rgba(7,53,64,.06);
  position: relative;
  flex-shrink: 0;
  transition: background .15s ease, border-color .15s ease;
}
.fc-toggle__ui::after{
  content:"";
  position:absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 8px 18px rgba(5,43,51,.20);
  transition: transform .18s ease;
}
.fc-toggle__input:checked + .fc-toggle__ui{
  background: rgba(47,143,158,.22);
  border-color: rgba(47,143,158,.34);
}
.fc-toggle__input:checked + .fc-toggle__ui::after{
  transform: translateX(20px);
}
.fc-toggle:focus-within{
  outline: 2px solid rgba(47,143,158,.55);
  outline-offset: 2px;
  border-radius: 16px;
}

.fc-toggle[aria-disabled="true"]{ cursor: not-allowed; opacity: .92; }
.fc-toggle__input:disabled + .fc-toggle__ui{ opacity: .60; filter: grayscale(.15); }
.fc-toggle__input:disabled + .fc-toggle__ui::after{ opacity: .80; }


.fc-cookie__panelactions{
  display:flex;
  justify-content:flex-end;
  gap: 10px;
  margin-top: 12px;
  padding: 0 2px;
}

@media (max-width: 760px){
  .fc-cookie__bar{
    flex-direction: column;
    align-items: stretch;
  }
  .fc-cookie__actions{
    justify-content: flex-end;
  }
  .fc-cookie__desc{ max-width: none; }
}

@media (max-width: 460px){
  .fc-cookie{ left: 8px; right: 8px; bottom: 8px; }
  .fc-btn{ width: 100%; }
  .fc-cookie__actions{ flex-direction: column; }
  .fc-cookie__panelactions{ flex-direction: column; }
}


/* ==========================
   v56 — 404 + Empty states (Go-Live)
   ========================== */

.fc-empty{
  display:flex;
  align-items:flex-start;
  gap: 14px;
  margin-top: 18px;
  padding: 14px 14px;
  border-radius: 18px;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(47,143,158,.16);
  box-shadow: 0 18px 44px rgba(5,43,51,.10);
}

.fc-empty__icon{
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  background: radial-gradient(16px 16px at 30% 30%, rgba(47,143,158,.22), rgba(47,143,158,0) 70%),
              rgba(47,143,158,.08);
  border: 1px solid rgba(47,143,158,.18);
  color: rgba(5,43,51,.72);
  flex: 0 0 auto;
}
.fc-empty__icon svg{ width: 18px; height: 18px; }

.fc-empty__title{
  font-weight: 800;
  font-size: 14px;
  color: rgba(5,43,51,.92);
  margin: 0 0 3px;
}
.fc-empty__sub{
  font-size: 13px;
  color: rgba(5,43,51,.68);
  line-height: 1.45;
  margin: 0 0 10px;
}

.fc-empty__btn{
  appearance:none;
  border: 1px solid rgba(47,143,158,.22);
  background: rgba(47,143,158,.10);
  color: rgba(5,43,51,.86);
  border-radius: 999px;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .01em;
  cursor:pointer;
  transition: transform .15s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
.fc-empty__btn:hover{
  transform: translateY(-1px);
  background: rgba(47,143,158,.14);
  border-color: rgba(47,143,158,.28);
  box-shadow: 0 12px 26px rgba(5,43,51,.12);
}

/* 404 page */
.fc-404 .fc-404-card{
  padding: 18px;
  border-radius: 22px;
  background: radial-gradient(900px 420px at 18% 12%, rgba(47,143,158,.14), rgba(255,255,255,0) 62%),
              rgba(255,255,255,.92);
  border: 1px solid rgba(47,143,158,.16);
  box-shadow: 0 22px 60px rgba(5,43,51,.12);
}

.fc-404-grid{
  display:grid;
  grid-template-columns: 1.35fr .9fr;
  gap: 18px;
  align-items:start;
}

.fc-404-eyebrow{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(5,43,51,.64);
  margin-bottom: 6px;
}
.fc-404 h1{
  margin: 0 0 8px;
  letter-spacing: -0.02em;
}
.fc-404-lead{
  margin: 0 0 10px;
  color: rgba(5,43,51,.74);
  font-size: 15px;
  line-height: 1.5;
  max-width: 58ch;
}
.fc-404-path{
  margin: 0 0 14px;
  color: rgba(5,43,51,.62);
}
.fc-404-actions{
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
}

.fc-404-quick{
  display:grid;
  gap: 10px;
}
.fc-404-quick a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
  padding: 12px 12px;
  border-radius: 16px;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(47,143,158,.14);
  box-shadow: 0 14px 34px rgba(5,43,51,.08);
  color: rgba(5,43,51,.86);
  transition: transform .15s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.fc-404-quick a:hover{
  transform: translateY(-1px);
  border-color: rgba(47,143,158,.22);
  background: rgba(255,255,255,.96);
  box-shadow: 0 20px 46px rgba(5,43,51,.10);
}
.fc-404-quick .fc-404-ic{
  width: 34px;
  height: 34px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  background: rgba(47,143,158,.08);
  border: 1px solid rgba(47,143,158,.16);
  color: rgba(5,43,51,.74);
}
.fc-404-quick svg{ width: 18px; height: 18px; }

@media (max-width: 920px){
  .fc-404-grid{ grid-template-columns: 1fr; }
}



/* ==========================
   v58 — Hotfix: /asfaleies landing chips + bullets
   Fixes: bubble/circle chips on landing, restores premium bullet checks in cards
   ========================== */

/* Landing chips: force pill layout (icon + label inline), kill any bubble pseudo-elements */
.asfaleies-landing .fc-hero-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap: 10px !important;
  align-items:center !important;
}
.asfaleies-landing .fc-hero-chips .fc-chip{
  display:inline-flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap: 8px !important;
  padding: 9px 12px !important;
  border-radius: 999px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  background: rgba(255,255,255,.84) !important;
  border: 1px solid rgba(47,143,158,.22) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.68) !important;
}
.asfaleies-landing .fc-hero-chips .fc-chip::before,
.asfaleies-landing .fc-hero-chips .fc-chip::after{
  content: none !important;
}
.asfaleies-landing .fc-chip-ico{
  width: 18px !important;
  height: 18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  flex: 0 0 auto !important;
}
.asfaleies-landing .fc-chip svg{
  width: 16px !important;
  height: 16px !important;
}

/* Card bullets: make them premium (checks), avoid browser default dots */
ul.fc-card-bullets{
  list-style: none !important;
  padding: 0 !important;
  margin: 10px 0 0 !important;
  display: grid;
  gap: 7px;
}
ul.fc-card-bullets > li{
  position: relative;
  margin: 0 !important;
  padding-left: 26px;
  color: rgba(11,46,51,.86);
  font-size: 13px;
  line-height: 1.35;
}
ul.fc-card-bullets > li::before{
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(47,143,158,.10);
  border: 1px solid rgba(47,143,158,.22);
  color: rgba(7,53,64,.92);
  font-weight: 900;
  font-size: 12px;
}

/* Small polish: keep bullets readable inside compact cards */
.fc-card .fc-card-sub{ color: rgba(11,46,51,.78); }

/* ===== FlexiCare v62 — Executive menu hardening (fix stray “Μενού/×” + dropdown flow) ===== */

/* Δεν χρησιμοποιούμε hamburger στο executive nav: το menu κάνει wrap.
   Άρα κρύβουμε το toggle για να μην εμφανίζεται “Μενού/×” στο desktop. */
.site-header .nav-toggle{ display:none !important; }

/* Σιγουρεύουμε ότι το menu είναι πάντα ορατό (και απλά κάνει wrap στο mobile). */
.site-header nav.nav .menu{ display:flex !important; }

/* Dropdowns: hidden by default + absolute (να μην μπαίνουν στη ροή και χαλάνε το header) */
.site-header .menu > li{ position:relative; }
.site-header .menu > li > .dropdown,
.site-header .menu > li > .flyout{
  position:absolute !important;
  top: calc(100% + 10px) !important;
  left: 0 !important;
  min-width: 320px;
  padding: 14px;
  margin: 0;
  list-style: none;
  border-radius: 16px;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(47,143,158,.22);
  box-shadow: 0 18px 44px rgba(6,24,32,.14);
  z-index: 220;

  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity .14s ease, transform .14s ease, visibility .14s ease;
}

.site-header .menu > li.has-children:hover > .dropdown,
.site-header .menu > li.has-children:focus-within > .dropdown,
.site-header .menu > li.has-children:hover > .flyout,
.site-header .menu > li.has-children:focus-within > .flyout{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

/* Mega dropdown layout */
.site-header .dropdown-mega{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  min-width: 560px;
}

/* Sections */
.site-header .dropdown .dd-title{
  display: block;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(11,46,51,.08);
  background: rgba(255,255,255,.72);
  color: rgba(11,46,51,.92);
  font-weight: 750;
}
.site-header .dropdown .dd-title:hover{
  background: rgba(47,143,158,.08);
  border-color: rgba(47,143,158,.18);
}
.site-header .dropdown .dd-desc{
  padding: 6px 12px 0;
  color: rgba(11,46,51,.65);
  font-size: 13px;
  line-height: 1.35;
}

/* Plain dropdown links */
.site-header .dropdown > li > a{
  display: block;
  padding: 10px 12px;
  border-radius: 12px;
  color: rgba(11,46,51,.90);
}
.site-header .dropdown > li > a:hover{
  background: rgba(47,143,158,.08);
}

/* Actions row in mega dropdown */
.site-header .dropdown .dd-actions{
  grid-column: 1 / -1;
  display: flex;
  gap: 10px;
  align-items: center;
  padding-top: 12px;
  margin-top: 8px;
  border-top: 1px solid rgba(11,46,51,.10);
}
.site-header .dropdown .dd-actions .btn{
  height: 36px;
  padding: 0 14px;
  border-radius: 999px;
}

/* Mobile behavior: dropdowns open with .open (main.js) */
@media (max-width: 980px){
  .site-header .menu > li > .dropdown,
  .site-header .menu > li > .flyout{
    position: static !important;
    min-width: 0 !important;
    width: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
    box-shadow: none !important;
    border-radius: 14px;
    margin-top: 8px;
    display: none;
  }
  .site-header .menu > li > .dropdown.open,
  .site-header .menu > li > .flyout.open{
    display: block;
  }
  .site-header .dropdown-mega{
    grid-template-columns: 1fr;
    min-width: 0 !important;
  }
}

/* ===== FlexiCare v63 — Restore responsive nav + hide mobile-only rows on desktop ===== */
/* Fixes: desktop showing “Μενού/×” and mobile CTA links inside the top nav row.
   Root cause: v62 forced menu display:flex everywhere and didn't hide mobile-only <li>s.
*/

@media (min-width: 981px){
  /* Desktop: no hamburger/drawer UI */
  .site-header .nav-toggle{ display:none !important; }

  /* Desktop menu stays inline */
  .site-header nav.nav .menu{
    display:flex !important;
    position:static !important;
    flex-direction:row !important;
    width:auto !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
  }

  /* Hide mobile-only rows inside <ul class="menu"> */
  .site-header .menu .menu-mobile-top,
  .site-header .menu .menu-mobile-cta{
    display:none !important;
  }
}

@media (max-width: 980px){
  /* Mobile: show hamburger toggle */
  .site-header .nav-toggle{ display:inline-flex !important; }

  /* Mobile drawer behavior */
  .site-header nav.nav .menu{
    display:none !important;
    position:absolute !important;
    right:18px !important;
    top:64px !important;
    flex-direction:column !important;
    width:min(92vw, 420px) !important;
  }
  .site-header nav.nav .menu.open{ display:flex !important; }

  /* Mobile top row (title + close) */
  .site-header .menu .menu-mobile-top{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    width:100%;
    padding:6px 6px 10px;
    margin:0 0 2px;
    border-bottom:1px solid rgba(11,46,51,.10);
  }
  .site-header .menu .menu-mobile-title{
    font-weight:850;
    color: rgba(11,46,51,.88);
  }
  .site-header .menu .menu-close{
    width:36px;
    height:36px;
    border-radius:12px;
    border:1px solid rgba(11,46,51,.18);
    background:rgba(255,255,255,.70);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
  }
  .site-header .menu .menu-close span{
    font-size:20px;
    line-height:1;
    transform: translateY(-1px);
  }

  /* Mobile CTA row at the bottom of the drawer */
  .site-header .menu .menu-mobile-cta{
    display:flex !important;
    gap:10px;
    width:100%;
    padding-top:10px;
    margin-top:8px;
    border-top:1px solid rgba(11,46,51,.10);
  }
  .site-header .menu .menu-mobile-cta > a{ flex:1 1 0; justify-content:center; }

  /* Ensure .btn styling wins over .menu > li > a rules */
  .site-header .menu .menu-mobile-cta > a.btn{
    padding:12px 14px !important;
    border-radius:14px !important;
    font-weight:800 !important;
  }
  .site-header .menu .menu-mobile-cta > a.btn.primary{
    background: linear-gradient(180deg, rgba(79,193,205,.92), rgba(43,138,148,.92)) !important;
    color:#fff !important;
    border:1px solid rgba(43,138,148,.32) !important;
  }
  .site-header .menu .menu-mobile-cta > a.btn.ghost{
    background: rgba(255,255,255,.85) !important;
    color: rgba(11,46,51,.92) !important;
    border:1px solid rgba(47,143,158,.22) !important;
  }
}

/* ===== FlexiCare – Conversion Pack (v76) =====
   - Sticky contact actions (desktop rail + mobile bottom bar)
   - Empty state CTAs
   - Cookie banner offset support via --fc-cookie-offset (set in conversion_pack.js)
*/
:root{
  --fc-cookie-offset: 0px;
  --fc-float-z: 999;
}

/* Desktop floating rail */
.fc-float{
  position: fixed;
  right: 16px;
  bottom: calc(16px + var(--fc-cookie-offset));
  z-index: var(--fc-float-z);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.fc-float__btn{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(14,42,54,.18);
  background: rgba(255,255,255,.92);
  color: rgba(14,42,54,.92);
  box-shadow: 0 14px 34px rgba(6,24,32,.16);
  backdrop-filter: blur(8px);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.fc-float__btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 44px rgba(6,24,32,.18);
}
.fc-float__btn--primary{
  border-color: rgba(47,143,158,.28);
  background: linear-gradient(180deg, rgba(47,143,158,.20), rgba(47,143,158,.10));
}
.fc-float__ico{
  width: 20px; height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.fc-float__ico svg{ width: 20px; height: 20px; }
.fc-float__label{
  font-weight: 800;
  font-size: 13px;
  letter-spacing: .01em;
}

/* Mobile bottom bar */
.fc-bottombar{
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: var(--fc-cookie-offset);
  z-index: var(--fc-float-z);
  display: none;
  gap: 10px;
  padding: 10px;
  border-radius: 18px;
  border: 1px solid rgba(14,42,54,.14);
  background: rgba(255,255,255,.92);
  box-shadow: 0 16px 44px rgba(6,24,32,.16);
  backdrop-filter: blur(10px);
}
.fc-bottombar__btn{
  flex: 1 1 0;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: 14px;
  border: 1px solid rgba(14,42,54,.12);
  background: rgba(255,255,255,.75);
  color: rgba(14,42,54,.92);
  font-weight: 900;
  font-size: 13px;
}
.fc-bottombar__btn--primary{
  border-color: rgba(47,143,158,.28);
  background: linear-gradient(180deg, rgba(47,143,158,.22), rgba(47,143,158,.12));
}
.fc-bottombar__ico{ opacity: .9; }
.fc-bottombar__txt{ transform: translateY(-.5px); }

@media (max-width: 820px){
  .fc-float{ display: none; }
  .fc-bottombar{ display: flex; }
  /* give content breathing room above the bar */
  body{ padding-bottom: calc(92px + var(--fc-cookie-offset)); }
}

/* Hide floating actions when footer is visible (avoid duplication) */
.fc-float, .fc-bottombar{
  transition: opacity .18s ease, transform .18s ease;
}
body.fc-footer-visible .fc-float,
body.fc-footer-visible .fc-bottombar{
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
}

/* Empty state CTAs */
.fc-empty__more{
  margin-top: 12px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.fc-pill{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(47,143,158,.22);
  background: rgba(47,143,158,.10);
  color: rgba(14,42,54,.92);
  font-weight: 900;
}
.fc-pill:hover{ background: rgba(47,143,158,.14); }
.fc-pill--ghost{
  border-color: rgba(14,42,54,.14);
  background: rgba(255,255,255,.70);
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .fc-float__btn{ transition: none; }
  .fc-float__btn:hover{ transform: none; }
}

/* ============================================================
   v82 — Insurance catalog premium covers (expand view)
   Decorative only: improves perceived quality without cluttering the grid.
============================================================ */
.fc-card-cover{
  height: 84px;
  border-radius: 18px;
  border: 1px solid rgba(12,112,118,.14);
  background:
    radial-gradient(700px 260px at 18% 12%, rgba(47,143,158,.20), rgba(255,255,255,0) 55%),
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.56));
  position: relative;
  overflow: hidden;
  margin: 0 0 14px;
}
.fc-card-cover::before{
  content:'';
  position:absolute;
  inset:0;
  background: radial-gradient(240px 140px at 20% 70%, rgba(255,255,255,.70), rgba(255,255,255,0) 65%);
  opacity: .7;
  pointer-events:none;
}
.fc-card-cover::after{
  content:'';
  position:absolute;
  right:-18px;
  top:-26px;
  width: 190px;
  height: 140px;
  background-image: var(--fc-thumb, none);
  background-repeat:no-repeat;
  background-size: cover;
  opacity: .42;
  filter: saturate(1.05) contrast(1.02);
  transform: rotate(-2deg);
  pointer-events:none;
}

@media (max-width: 560px){
  .fc-card-cover{ height: 72px; }
  .fc-card-cover::after{
    width: 160px;
    height: 120px;
    right:-22px;
    top:-26px;
    opacity: .36;
  }
}

/* ===============================
   v84 — Insurance Programs IA (home split + hub grid + detail layout)
   =============================== */

.fc-programs-split{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:16px;
}
@media (max-width: 900px){
  .fc-programs-split{ grid-template-columns: 1fr; }
}

.fc-programs-box{ padding:16px; }
.fc-programs-box-h{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.fc-programs-box-title{
  font-weight:800;
  font-size:18px;
  letter-spacing:-0.01em;
}

.fc-bullet-cols{
  margin:0;
  padding-left: 18px;
  columns: 2;
  column-gap: 24px;
}
.fc-bullet-cols li{ break-inside: avoid; margin: 8px 0; }
.fc-bullet-cols a{ text-decoration:none; color:inherit; }
.fc-bullet-cols a:hover{ text-decoration:underline; }
@media (max-width: 640px){
  .fc-bullet-cols{ columns: 1; }
}

/* Segmented control (tabs) */
.fc-segment{
  display:inline-flex;
  gap:0;
  border:1px solid rgba(9, 60, 74, 0.18);
  background: rgba(255,255,255,0.65);
  border-radius: 999px;
  padding: 3px;
  box-shadow: 0 8px 22px rgba(9, 60, 74, 0.06);
}
.fc-seg{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 13px;
  color: rgba(9, 60, 74, 0.80);
  text-decoration:none;
}
.fc-seg.is-active{
  background: linear-gradient(135deg, rgba(10,120,144,0.18), rgba(10,120,144,0.08));
  color: rgba(9, 60, 74, 0.95);
  box-shadow: inset 0 0 0 1px rgba(10,120,144,0.18);
}

/* Hub header */
.fc-hub-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
}
.fc-hub-actions{ display:flex; gap:10px; flex-wrap:wrap; }
@media (max-width: 900px){
  .fc-hub-head{ align-items:flex-start; flex-direction:column; }
}

/* Program grid */
.fc-program-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:14px;
}
@media (max-width: 900px){
  .fc-program-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px){
  .fc-program-grid{ grid-template-columns: 1fr; }
}

.fc-program-tile{
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:16px;
  border-radius: var(--fc-radius-lg, 18px);
  background: rgba(255,255,255,0.82);
  border: 1px solid rgba(9, 60, 74, 0.10);
  box-shadow: 0 14px 34px rgba(9, 60, 74, 0.06);
  text-decoration:none;
  color: inherit;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.fc-program-tile:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(9, 60, 74, 0.10);
  border-color: rgba(10,120,144,0.20);
}
.fc-program-tile-ico{
  width: 38px;
  height: 38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(10,120,144,0.14), rgba(10,120,144,0.06));
  border: 1px solid rgba(10,120,144,0.18);
}
.fc-program-ico{
  width: 20px;
  height: 20px;
}
.fc-program-tile-ico svg{ width: 20px; height: 20px; }
.fc-program-tile-title{ font-weight: 800; letter-spacing:-0.01em; }
.fc-program-tile-sub{ font-size: 13px; color: rgba(9,60,74,.70); line-height: 1.35; }

/* Detail layout */
.fc-program-detail .container{ max-width: 1160px; }
.fc-program-top{
  display:grid;
  grid-template-columns: 1fr 320px;
  gap:16px;
  align-items:start;
  margin-bottom: 14px;
}
@media (max-width: 980px){
  .fc-program-top{ grid-template-columns: 1fr; }
}
.fc-program-breadcrumb{
  font-size: 12px;
  color: rgba(9,60,74,.65);
  display:flex;
  gap:8px;
  align-items:center;
}
.fc-program-breadcrumb a{ color: inherit; text-decoration:none; }
.fc-program-breadcrumb a:hover{ text-decoration:underline; }

.fc-program-h1{
  display:flex;
  gap:10px;
  align-items:center;
  margin: 8px 0 8px;
  font-size: 30px;
  letter-spacing: -0.02em;
}
.fc-program-h1-ico{
  width: 42px;
  height: 42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(10,120,144,0.16), rgba(10,120,144,0.06));
  border: 1px solid rgba(10,120,144,0.18);
}
.fc-program-lead{
  margin:0;
  color: rgba(9,60,74,.76);
  max-width: 70ch;
}

.fc-program-top-right{
  position: sticky;
  top: 90px;
  align-self:start;
  display:flex;
  flex-direction:column;
  gap:10px;
}
@media (max-width: 980px){
  .fc-program-top-right{ position: static; }
}
.fc-program-note{ font-size: 12px; color: rgba(9,60,74,.62); }

.fc-program-layout{
  display:grid;
  grid-template-columns: 1fr 320px;
  gap:16px;
}
@media (max-width: 980px){
  .fc-program-layout{ grid-template-columns: 1fr; }
}

.fc-program-content .fc-program-body{
  background: rgba(255,255,255,0.80);
  border: 1px solid rgba(9, 60, 74, 0.10);
  border-radius: var(--fc-radius-lg, 18px);
  padding: 16px;
  box-shadow: 0 14px 34px rgba(9,60,74,0.06);
}
.fc-program-body h3,
.fc-program-body h4{ margin: 12px 0 8px; }
.fc-program-body p{ margin: 0 0 10px; }
.fc-program-body ul{ margin: 0 0 10px; padding-left: 18px; }

.fc-program-actions{ display:flex; gap:10px; margin-top: 12px; flex-wrap:wrap; }

.fc-program-nav{
  position: sticky;
  top: 90px;
  align-self:start;
  background: rgba(255,255,255,0.78);
  border: 1px solid rgba(9, 60, 74, 0.10);
  border-radius: var(--fc-radius-lg, 18px);
  box-shadow: 0 14px 34px rgba(9,60,74,0.06);
  overflow:hidden;
}
@media (max-width: 980px){
  .fc-program-nav{ position: static; order: -1; }
}

.fc-program-nav-head{
  padding: 12px;
  border-bottom: 1px solid rgba(9,60,74,0.10);
  display:flex;
  flex-direction:column;
  gap:10px;
}
.fc-program-nav-title{ font-weight:800; font-size: 13px; color: rgba(9,60,74,.85); }

.fc-program-nav-list{
  display:flex;
  flex-direction:column;
  max-height: 520px;
  overflow:auto;
}
.fc-program-nav-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding: 12px 12px;
  text-decoration:none;
  color: rgba(9,60,74,.80);
  border-bottom: 1px solid rgba(9,60,74,0.08);
}
.fc-program-nav-item:last-child{ border-bottom:none; }
.fc-program-nav-item:hover{ background: rgba(10,120,144,0.06); }
.fc-program-nav-item.is-active{
  background: linear-gradient(135deg, rgba(10,120,144,0.16), rgba(10,120,144,0.06));
  color: rgba(9,60,74,.95);
}
.fc-program-nav-dot{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  border: 2px solid rgba(9,60,74,.32);
}
.fc-program-nav-item.is-active .fc-program-nav-dot{
  border-color: rgba(10,120,144,.70);
  box-shadow: 0 0 0 4px rgba(10,120,144,0.10);
}


/* ===============================
   v85 — Programs UI fidelity (watermark hubs + sidebar buttons + mobile select)
   =============================== */
.fc-program-hub{
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(900px 520px at 18% 18%, rgba(47,143,158,.10), rgba(255,255,255,0) 62%),
    radial-gradient(760px 420px at 86% 30%, rgba(21,106,124,.08), rgba(255,255,255,0) 60%),
    linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(246,251,252,0.92) 100%);
}
.fc-program-hub::before{
  content:"";
  position:absolute;
  inset:-80px -120px -80px -120px;
  background: url('/assets/img/watermark-arrow.svg') no-repeat 82% 46%;
  background-size: 980px auto;
  opacity: 0.065;
  transform: rotate(-6deg);
  pointer-events:none;
}
.fc-program-hub .container{ position:relative; z-index:1; }

/* Make segmented control closer to screenshot (wide tabs) */
.fc-segment{
  width: min(620px, 100%);
  display:flex;
  border-radius: 16px;
  padding: 4px;
  background: rgba(9, 60, 74, 0.10);
  border: 1px solid rgba(9, 60, 74, 0.14);
}
.fc-seg{
  flex:1;
  min-height: 44px;
  font-size: 13px;
  border-radius: 13px;
  padding: 0 18px;
}
.fc-seg.is-active{
  background: linear-gradient(135deg, rgba(7,53,64,0.92), rgba(10,120,144,0.86));
  color: rgba(255,255,255,.96);
  box-shadow: 0 10px 20px rgba(0,0,0,.10);
  border: 1px solid rgba(255,255,255,0.14);
}

/* Hub tiles closer to open "list" style */
.fc-program-grid{ gap: 22px; }
@media (max-width: 900px){ .fc-program-grid{ gap: 16px; } }

.fc-program-tile{
  flex-direction: row;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 14px;
  background: rgba(255,255,255,0.0);
  border: 1px solid rgba(9, 60, 74, 0.00);
  box-shadow: none;
}
.fc-program-tile:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,0.84);
  border-color: rgba(9, 60, 74, 0.10);
  box-shadow: 0 14px 34px rgba(9, 60, 74, 0.06);
}
.fc-program-tile-ico{ flex: 0 0 auto; }
.fc-program-tile-body{
  display:flex;
  flex-direction:column;
  gap: 4px;
  padding-top: 2px;
  min-width: 0;
}
.fc-program-tile-title{ font-size: 16px; }
.fc-program-tile-sub{ max-width: 40ch; }

/* Sidebar nav buttons like screenshot */
.fc-program-nav{
  background: rgba(255,255,255,0.78);
}
.fc-program-nav-title{ display:none; } /* keep it clean */
.fc-program-nav-list{
  padding: 10px 0;
  max-height: 620px;
}
.fc-program-nav-item{
  margin: 8px 12px;
  border-radius: 14px;
  background: rgba(9, 60, 74, 0.08);
  border: 1px solid rgba(9, 60, 74, 0.10);
  padding: 12px 12px;
  border-bottom: none;
}
.fc-program-nav-item:hover{ background: rgba(9, 60, 74, 0.10); }
.fc-program-nav-item.is-active{
  background: linear-gradient(135deg, rgba(7,53,64,0.92), rgba(10,120,144,0.86));
  color: rgba(255,255,255,.96);
  border-color: rgba(10,120,144,0.22);
}
.fc-program-nav-dot{
  border-color: rgba(10,120,144,.55);
}
.fc-program-nav-item.is-active .fc-program-nav-dot{
  border-color: rgba(255,255,255,.92);
  box-shadow: 0 0 0 4px rgba(255,255,255,0.12);
}
.fc-program-nav-label{
  font-weight: 700;
  font-size: 13px;
  letter-spacing: -0.01em;
}

/* Mobile: use select instead of long sidebar list */
.fc-program-nav-mobile{ display:none; }
.fc-program-select{
  width: 100%;
  min-height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(9, 60, 74, 0.16);
  background: rgba(255,255,255,0.92);
  padding: 0 12px;
  font-weight: 700;
  color: rgba(9,60,74,.90);
  box-shadow: 0 10px 22px rgba(9,60,74,0.06);
}
@media (max-width: 980px){
  .fc-program-nav-mobile{ display:block; padding: 0 12px 12px; }
  .fc-program-nav-list{ display:none; }
  .fc-program-nav{ order: 2; } /* keep content first */
}

/* ===============================
   v89 — Program detail content layout (documentation-style sections)
   - Cleaner typography, better headings, list spacing.
   - Supports optional per-program override files.
   =============================== */
.fc-program-body{
  font-size: 15px;
  line-height: 1.7;
  color: rgba(9,60,74,.86);
}
.fc-program-body p{ margin: 0 0 12px; }
.fc-program-body p:last-child{ margin-bottom: 0; }

.fc-program-body h2{
  margin: 18px 0 10px;
  font-size: 18px;
  letter-spacing: -0.01em;
}
.fc-program-body h3{
  margin: 16px 0 10px;
  font-size: 16px;
  letter-spacing: -0.01em;
}
.fc-program-body h4{
  margin: 14px 0 8px;
  font-size: 14px;
  text-transform: none;
  letter-spacing: -0.01em;
}

/* Section heading accent (petrol underline) */
.fc-program-body h2,
.fc-program-body h3,
.fc-program-body h4{
  position: relative;
}
.fc-program-body h2::after,
.fc-program-body h3::after,
.fc-program-body h4::after{
  content:"";
  display:block;
  width: 36px;
  height: 2px;
  margin-top: 8px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(7,53,64,0.92), rgba(10,120,144,0.86));
  opacity: 0.85;
}

.fc-program-body ul,
.fc-program-body ol{
  margin: 0 0 14px;
  padding-left: 20px;
}
.fc-program-body li{ margin: 6px 0; }

.fc-program-body a{ color: rgba(7,53,64,0.95); text-decoration: underline; text-underline-offset: 3px; }
.fc-program-body a:hover{ color: rgba(10,120,144,0.95); }

/* Optional content blocks for override files */
.fc-prog-section{
  padding: 10px 0;
}
.fc-prog-section + .fc-prog-section{
  border-top: 1px solid rgba(9, 60, 74, 0.08);
}
.fc-prog-kv{
  display:grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 8px 0 14px;
}
.fc-prog-kv .fc-prog-kv-item{
  background: rgba(10,120,144,0.06);
  border: 1px solid rgba(10,120,144,0.14);
  border-radius: 14px;
  padding: 10px 12px;
}
.fc-prog-kv .fc-prog-kv-title{
  font-weight: 800;
  font-size: 12px;
  color: rgba(9,60,74,.90);
  margin-bottom: 4px;
}
.fc-prog-kv .fc-prog-kv-text{ font-size: 13px; color: rgba(9,60,74,.78); line-height: 1.45; }

/* ===============================
   v91 — Program page TOC (anchors + scrollspy)
   - Generates a mini TOC in content and a collapsible TOC in the sidebar.
   - Keeps UX clean with premium petrol styling.
   =============================== */

/* Make anchor jumps land correctly under sticky header */
.fc-program-body h2,
.fc-program-body h3{ scroll-margin-top: 110px; }

.fc-program-toc{
  margin: 0 0 14px;
  padding: 14px;
  background: rgba(255,255,255,0.86);
  border: 1px solid rgba(9, 60, 74, 0.10);
  border-radius: var(--fc-radius-lg, 18px);
  box-shadow: 0 14px 34px rgba(9,60,74,0.06);
}
.fc-program-toc-title{
  font-weight: 800;
  font-size: 13px;
  color: rgba(9,60,74,.85);
  margin: 0 0 10px;
}
.fc-program-toc-links{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}
.fc-program-toc-links a{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(9,60,74,0.12);
  background: rgba(9,60,74,0.06);
  color: rgba(9,60,74,.90);
  text-decoration: none;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: -0.01em;
}
.fc-program-toc-links a:hover{ background: rgba(9,60,74,0.08); }
.fc-program-toc-links a.is-active{
  background: linear-gradient(135deg, rgba(7,53,64,0.92), rgba(10,120,144,0.86));
  color: rgba(255,255,255,.96);
  border-color: rgba(10,120,144,0.22);
}

/* Sidebar groups (collapsible) */
.fc-program-group{
  border-top: 1px solid rgba(9,60,74,0.10);
  padding: 8px 12px 12px;
}
.fc-program-group summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
  cursor:pointer;
  font-weight: 800;
  font-size: 12px;
  color: rgba(9,60,74,.86);
  padding: 10px 2px;
  list-style: none;
}
.fc-program-group summary::-webkit-details-marker{ display:none; }
.fc-program-group summary::after{
  content: "▾";
  font-size: 14px;
  color: rgba(9,60,74,.55);
  transform: rotate(0deg);
  transition: transform .18s ease;
}
.fc-program-group[open] summary::after{ transform: rotate(180deg); }

.fc-program-toc-side{
  display:flex;
  flex-direction:column;
  gap: 8px;
  padding-bottom: 4px;
}
.fc-program-toc-side a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(9, 60, 74, 0.08);
  border: 1px solid rgba(9, 60, 74, 0.10);
  color: rgba(9,60,74,.92);
  text-decoration:none;
  font-weight: 700;
  font-size: 12.5px;
  letter-spacing: -0.01em;
}
.fc-program-toc-side a:hover{ background: rgba(9,60,74,0.10); }
.fc-program-toc-side a.is-active{
  background: linear-gradient(135deg, rgba(7,53,64,0.92), rgba(10,120,144,0.86));
  color: rgba(255,255,255,.96);
  border-color: rgba(10,120,144,0.22);
}

.fc-section-select{
  width: 100%;
  min-height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(9, 60, 74, 0.16);
  background: rgba(255,255,255,0.92);
  padding: 0 12px;
  font-weight: 700;
  color: rgba(9,60,74,.90);
  box-shadow: 0 10px 22px rgba(9,60,74,0.06);
}

/* Mobile: prefer dropdowns, hide side groups */
@media (max-width: 980px){
  .fc-program-group{ display:none; }
  .fc-program-toc{ margin-top: 10px; }
}

/* ===============================
   v98 — Program pages: readability + right-nav button polish
   - Better reading width and section rhythm
   - Nav items feel like buttons (consistent height)
   =============================== */
.fc-program-layout{ align-items: start; }
.fc-program-content{ width: 100%; max-width: 760px; justify-self: start; }

.fc-program-content .fc-program-body{
  padding: 20px;
}

.fc-program-nav-item{
  min-height: 44px;
}

.fc-program-body{
  font-size: 15px;
  line-height: 1.75;
}
.fc-program-body h2{ margin-top: 20px; }

/* Make TOC blocks feel lighter */
.fc-program-toc{
  background: rgba(255,255,255,0.62);
  border: 1px solid rgba(9, 60, 74, 0.10);
  border-radius: 16px;
  padding: 12px 14px;
  box-shadow: 0 10px 24px rgba(9,60,74,0.05);
  margin: 0 0 12px;
}

/* ===============================
   v104 — Open/pastel active states + readability uniformity
   Goal: remove “closed/dark” fills on pills/sidebar items while keeping petrol premium.
   =============================== */

:root{
  --fc-open-top: rgba(255,255,255,.90);
  --fc-open-bot: rgba(47,143,158,.20);
  --fc-open-border: rgba(47,143,158,.32);
  --fc-open-text: rgba(7,53,64,.96);
}

/* TOC pills (main content) */
.fc-program-toc-links a{
  background: rgba(47,143,158,.06);
  border-color: rgba(47,143,158,.18);
  color: rgba(7,53,64,.92);
  font-size: 13px;
  font-weight: 750;
  transition: transform .14s ease, background .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.fc-program-toc-links a:hover{
  background: rgba(47,143,158,.09);
  border-color: rgba(47,143,158,.26);
}
.fc-program-toc-links a:active{ transform: translateY(0.5px); }
.fc-program-toc-links a.is-active{
  background: linear-gradient(180deg, var(--fc-open-top), var(--fc-open-bot));
  border-color: var(--fc-open-border);
  color: var(--fc-open-text);
  text-shadow: none;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    0 12px 28px rgba(5,43,51,.10);
  position: relative;
}
.fc-program-toc-links a.is-active::before{
  content:"";
  width: 8px; height: 8px;
  border-radius: 999px;
  background: rgba(47,143,158,.42);
  box-shadow: 0 0 0 4px rgba(47,143,158,.12);
}

/* Sidebar program buttons */
.fc-program-toc-side a{
  background: rgba(47,143,158,.06);
  border-color: rgba(47,143,158,.18);
  color: rgba(7,53,64,.92);
  font-size: 13px;
  font-weight: 750;
  transition: transform .14s ease, background .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.fc-program-toc-side a:hover{
  background: rgba(47,143,158,.09);
  border-color: rgba(47,143,158,.26);
}
.fc-program-toc-side a:active{ transform: translateY(0.5px); }
.fc-program-toc-side a.is-active{
  background: linear-gradient(180deg, var(--fc-open-top), var(--fc-open-bot));
  border-color: var(--fc-open-border);
  color: var(--fc-open-text);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    0 12px 28px rgba(5,43,51,.10);
  position: relative;
}
.fc-program-toc-side a.is-active::before{
  content:"";
  width: 8px; height: 8px;
  border-radius: 999px;
  background: rgba(47,143,158,.42);
  box-shadow: 0 0 0 4px rgba(47,143,158,.12);
}

/* Audience segmented (Ιδιώτες/Επιχειρήσεις) — force “open” active, even if something else overrides */
.fc-seg.is-active{
  background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(47,143,158,.16)) !important;
  color: rgba(7,53,64,.96) !important;
  box-shadow:
    inset 0 0 0 1px rgba(47,143,158,.20),
    0 8px 18px rgba(5,43,51,.08) !important;
}

/* Readability nudge on program body (keeps layout) */
.fc-program-body{
  font-size: 15.5px;
  line-height: 1.78;
}
.fc-program-body h2{ letter-spacing: -0.01em; }
.fc-program-body ul{ padding-left: 1.15em; }

/* ===============================
   v195 — Premium UI system (content only — nav untouched)
   - Harmonizes typography, spacing, buttons, chips, hubs.
   - Adds styling for Συνήθεις Επιλογές Ασφάλισης + Συχνές Ερωτήσεις (previously unstyled).
   =============================== */

:root{
  --fc-radius-card: 18px;
  --fc-radius-btn: 14px;
  --fc-radius-chip: 999px;

  --fc-shadow-xs: 0 10px 22px rgba(5,43,51,.06);
  --fc-shadow-sm: 0 14px 34px rgba(5,43,51,.08);
  --fc-shadow-md: 0 18px 44px rgba(5,43,51,.10);

  --fc-border: rgba(9,60,74,.10);
  --fc-border-strong: rgba(47,143,158,.22);

  --fc-text: rgba(9,60,74,.90);
  --fc-muted: rgba(9,60,74,.66);

  --fc-surface: rgba(255,255,255,.88);
  --fc-surface2: rgba(246,251,252,.90);

  --fc-accent: rgba(47,143,158,1);
  --fc-accent-soft: rgba(47,143,158,.12);
  --fc-accent-soft2: rgba(47,143,158,.08);
}

/* Typography (scope to content blocks, not header/nav) */
:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail, .page){
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--fc-text);
}

:where(.section){ padding: 34px 0; }
@media (max-width: 820px){
  :where(.section){ padding: 26px 0; }
}

/* Headings rhythm */
:where(.section) .fc-h1{
  font-weight: 900;
  font-size: clamp(24px, 2.3vw, 32px);
  letter-spacing: -0.02em;
}
:where(.section) .small{
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--fc-muted);
}

/* Buttons — content only (avoid touching .menu / header) */
:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn,
:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn:visited{
  border-radius: var(--fc-radius-btn) !important;
  min-height: 44px;
  padding: 11px 16px;
  font-weight: 800;
  letter-spacing: -0.01em;
  box-shadow: none;
  opacity: 1;
  transition: transform .14s ease, box-shadow .14s ease, background .14s ease, border-color .14s ease;
}

:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn:not(.primary),
:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn:not(.primary):visited{
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(9,60,74,.14);
  color: var(--fc-text) !important;
}

:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn:not(.primary):hover{
  background: rgba(47,143,158,.08);
  border-color: rgba(47,143,158,.24);
  box-shadow: var(--fc-shadow-xs);
  transform: translateY(-1px);
}

:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn.primary,
:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn.primary:visited{
  background: linear-gradient(135deg, var(--petrol-900), var(--petrol-700));
  border: 1px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.96) !important;
  box-shadow: 0 14px 34px rgba(5,43,51,.14);
}

:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn.primary:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 44px rgba(5,43,51,.18);
}

:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn:active{
  transform: translateY(0);
}

:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail) .btn:focus-visible{
  outline: none;
  box-shadow: 0 0 0 4px rgba(47,143,158,.22), var(--fc-shadow-xs);
}

/* Chips — keep them consistent even if older blocks redefine them */
.fc-chip{
  border-radius: var(--fc-radius-chip) !important;
  font-weight: 800;
  font-size: 12px;
  padding: 5px 9px;
  background: rgba(47,143,158,.10);
  border: 1px solid rgba(47,143,158,.18);
  color: rgba(14,42,54,.86);
}

/* Programs split (Home + /asfaleies) */
.fc-programs-box{
  border-radius: var(--fc-radius-card) !important;
  border: 1px solid var(--fc-border) !important;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(246,251,252,.86));
  box-shadow: var(--fc-shadow-xs);
}

.fc-programs-box-h{
  padding: 6px 2px 2px;
  margin-bottom: 8px;
}

/* Bullet links: no underline, but clear hover affordance (works with global no-underline) */
.fc-bullet-cols a{
  color: rgba(7,53,64,.92) !important;
  box-shadow: inset 0 -1px 0 rgba(47,143,158,.0);
  transition: box-shadow .14s ease, color .14s ease;
}
.fc-bullet-cols a:hover{
  color: rgba(10,120,144,.96) !important;
  box-shadow: inset 0 -1px 0 rgba(47,143,158,.40);
}

/* Program HUB: Top picks (previously missing styles) */
.fc-picks{
  padding: 14px;
  border-radius: var(--fc-radius-card);
  border: 1px solid var(--fc-border);
  background:
    radial-gradient(900px 260px at 16% 0%, rgba(47,143,158,.12), rgba(255,255,255,0) 62%),
    linear-gradient(180deg, rgba(255,255,255,.76), rgba(246,251,252,.76));
  box-shadow: var(--fc-shadow-xs);
}

.fc-picks-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.fc-picks-title{
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  color: rgba(7,53,64,.86);
}

.fc-picks-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
@media (max-width: 980px){
  .fc-picks-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px){
  .fc-picks-grid{ grid-template-columns: 1fr; }
}

.fc-pick-card{
  position: relative;
  display:block;
  border-radius: var(--fc-radius-card);
  border: 1px solid var(--fc-border);
  background: rgba(255,255,255,.90);
  box-shadow: var(--fc-shadow-sm);
  overflow:hidden;
  color: inherit;
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

.fc-pick-card::after{
  content:"";
  position:absolute;
  right:-36px;
  top:-34px;
  width: 170px;
  height: 170px;
  background-image: var(--thumb);
  background-repeat:no-repeat;
  background-size: cover;
  opacity: .11;
  filter: saturate(1.05) contrast(1.02);
  transform: rotate(-10deg);
  pointer-events:none;
}

.fc-pick-card:hover{
  transform: translateY(-2px);
  border-color: rgba(47,143,158,.26);
  box-shadow: var(--fc-shadow-md);
}

.fc-pick-card-body{
  display:flex;
  flex-direction:column;
  gap: 6px;
  padding: 14px;
  position: relative;
  z-index: 1;
}

.fc-pick-card-ico{
  width: 42px;
  height: 42px;
  border-radius: 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: linear-gradient(135deg, rgba(47,143,158,.16), rgba(47,143,158,.06));
  border: 1px solid rgba(47,143,158,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62);
}

.fc-pick-card-title{
  font-weight: 900;
  letter-spacing: -0.01em;
  color: rgba(7,53,64,.95);
}

.fc-pick-card-sub{
  font-size: 13px;
  color: rgba(9,60,74,.70);
  line-height: 1.35;
}

/* Program tiles: enforce premium card feel on hub pages (override older list-like versions) */
.fc-program-hub .fc-program-grid{
  margin-top: 16px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}
@media (max-width: 900px){
  .fc-program-hub .fc-program-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px){
  .fc-program-hub .fc-program-grid{ grid-template-columns: 1fr; }
}

.fc-program-hub .fc-program-tile{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap: 10px;
  padding: 16px;
  border-radius: var(--fc-radius-card);
  border: 1px solid var(--fc-border);
  background: rgba(255,255,255,.88);
  box-shadow: var(--fc-shadow-xs);
  transform:none;
}

.fc-program-hub .fc-program-tile{ --fc-thumb: var(--thumb); }

.fc-program-hub .fc-program-tile::after{
  content:"";
  position:absolute;
  inset:0;
  z-index: 0;
  background-image: var(--thumb);
  background-repeat:no-repeat;
  background-size: 160px 160px;
  background-position: right -46px top -44px;
  opacity: .09;
  filter: saturate(1.05) contrast(1.02);
  pointer-events:none;
}

.fc-program-tile-ico,
.fc-program-tile-body{ position: relative; z-index: 1; }

.fc-program-hub .fc-program-tile:hover{
  transform: translateY(-2px);
  border-color: rgba(47,143,158,.26);
  box-shadow: var(--fc-shadow-md);
}

.fc-program-hub .fc-program-tile-ico{
  width: 44px;
  height: 44px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(47,143,158,.16), rgba(47,143,158,.06));
  border: 1px solid rgba(47,143,158,.18);
}

.fc-program-hub .fc-program-tile-title{
  font-weight: 900;
  letter-spacing: -0.01em;
  font-size: 16px;
}

.fc-program-hub .fc-program-tile-sub{
  font-size: 13px;
  color: rgba(9,60,74,.70);
  line-height: 1.35;
}

.fc-program-hub .fc-program-tile-chips{
  display:flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 2px;
}

/* Ενότητα Συχνές Ερωτήσεις — premium details/summary (previously unstyled) */
.fc-faq{
  margin-top: 22px;
  padding: 16px;
  border-radius: var(--fc-radius-card);
  border: 1px solid var(--fc-border);
  background:
    radial-gradient(900px 260px at 16% 0%, rgba(47,143,158,.10), rgba(255,255,255,0) 62%),
    linear-gradient(180deg, rgba(255,255,255,.76), rgba(246,251,252,.76));
  box-shadow: var(--fc-shadow-xs);
}

.fc-faq-title{
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  color: rgba(7,53,64,.86);
}

.fc-faq-list{ display:grid; gap: 10px; margin-top: 12px; }

.fc-faq-item{
  border-radius: 16px;
  border: 1px solid rgba(9,60,74,.10);
  background: rgba(255,255,255,.90);
  box-shadow: 0 12px 28px rgba(5,43,51,.06);
  overflow:hidden;
}

.fc-faq-item summary{
  list-style:none;
  cursor:pointer;
  padding: 14px 14px;
  font-weight: 900;
  color: rgba(7,53,64,.94);
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 12px;
}
.fc-faq-item summary::-webkit-details-marker{ display:none; }

.fc-faq-item summary::after{
  content:"+";
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 12px;
  background: rgba(47,143,158,.10);
  border: 1px solid rgba(47,143,158,.18);
  color: rgba(7,53,64,.86);
  font-weight: 900;
  line-height: 1;
}

.fc-faq-item[open] summary::after{ content:"–"; }

.fc-faq-item summary:focus-visible{
  outline:none;
  box-shadow: 0 0 0 4px rgba(47,143,158,.18);
}

.fc-faq-answer{
  padding: 0 14px 14px;
  color: rgba(9,60,74,.76);
  line-height: 1.6;
}

.fc-faq-answer p{ margin: 0 0 10px; }
.fc-faq-answer ul{ margin: 0; padding-left: 18px; }
.fc-faq-answer li{ margin: 6px 0; }

/* Touch: avoid sticky hover */
@media (hover: none) and (pointer: coarse){
  .fc-pick-card:hover,
  .fc-program-hub .fc-program-tile:hover{ transform:none; }
}

/* v195 — Components migrated from inline <style> blocks */
.fc-why{ margin-top: -8px; }
.fc-why__h{ font-weight: 900; font-size: 12px; color: rgba(9,60,74,.62); margin: 0 0 10px 2px; letter-spacing: .14em; text-transform: uppercase; }
.fc-why__grid{ display:grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.fc-why__card{
  padding: 14px 14px;
  border-radius: var(--fc-radius-card);
  background:
    radial-gradient(700px 220px at 15% 0%, rgba(47,143,158,.12), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,251,252,.90));
  border: 1px solid rgba(47,143,158,.14);
  box-shadow: 0 12px 28px rgba(5,43,51,.06);
}
.fc-why__t{ font-weight: 900; font-size: 13px; margin: 0 0 6px; }
.fc-why__p{ margin: 0; line-height: 1.55; }
@media (max-width: 960px){
  .fc-why__grid{ grid-template-columns: 1fr; gap: 10px; }
  .fc-why__card{ padding: 14px; }
}

.fc-cta-banner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
  padding: 16px 18px;
  border-radius: var(--fc-radius-card);
  background:
    radial-gradient(900px 240px at 12% 0%, rgba(47,143,158,.14), transparent 60%),
    linear-gradient(180deg, rgba(246,251,252,.92), rgba(255,255,255,.92));
  border: 1px solid rgba(47,143,158,.18);
  box-shadow: var(--fc-shadow-xs);
}

.fc-cta-banner__title{ font-weight: 900; letter-spacing: -0.01em; font-size: 18px; margin: 0; color: rgba(7,53,64,.95); }
.fc-cta-banner__sub{ margin-top: 6px; max-width: 720px; color: rgba(9,60,74,.70); }
.fc-cta-banner__actions{ display:flex; align-items:center; gap: 10px; flex-shrink: 0; flex-wrap: wrap; }
@media (max-width: 720px){
  .fc-cta-banner{ flex-direction: column; align-items: flex-start; }
  .fc-cta-banner__actions{ width: 100%; }
  .fc-cta-banner__actions .btn{ flex: 1 1 160px; width: 100%; }
}

/* ===============================
   v196 — Other Products (/alla-proionta) polish
   - Removes inline styles from pages
   - Adds a reusable "shell" + premium cards
   - Content-only scope (nav untouched)
   =============================== */

.fc-shell{
  padding: 22px;
  border-radius: var(--fc-radius-card);
  border: 1px solid var(--fc-border);
  background:
    radial-gradient(900px 280px at 14% 0%, rgba(47,143,158,.10), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(246,251,252,.86));
  box-shadow: var(--fc-shadow-sm);
}
@media (max-width: 820px){
  .fc-shell{ padding: 16px; }
}

.fc-page-head{ margin-bottom: 14px; }

.fc-back{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  transition: transform .14s ease, background .14s ease, border-color .14s ease, box-shadow .14s ease;
  font-weight: 800;
  font-size: 13px;
  color: rgba(9,60,74,.78) !important;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(47,143,158,.08);
  border: 1px solid rgba(47,143,158,.16);
  box-shadow: 0 10px 22px rgba(5,43,51,.05);
}
.fc-back::before{ content: "←"; }
.fc-back:hover{
  background: rgba(47,143,158,.12);
  border-color: rgba(47,143,158,.22);
  transform: translateY(-1px);
}

.fc-h2{
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: -0.01em;
  color: rgba(7,53,64,.94);
}

.fc-op-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
@media (max-width: 980px){
  .fc-op-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px){
  .fc-op-grid{ grid-template-columns: 1fr; }
}

.fc-op-card{
  position: relative;
  display:block;
  padding: 16px;
  border-radius: var(--fc-radius-card);
  border: 1px solid var(--fc-border);
  background: rgba(255,255,255,.90);
  box-shadow: var(--fc-shadow-xs);
  color: inherit;
  overflow:hidden;
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

.fc-op-card::after{
  content:"";
  position:absolute;
  right:-44px;
  top:-52px;
  width: 190px;
  height: 190px;
  border-radius: 999px;
  background:
    radial-gradient(circle at 30% 35%, rgba(47,143,158,.22), rgba(47,143,158,0) 62%);
  pointer-events:none;
}

.fc-op-card:hover{
  transform: translateY(-2px);
  border-color: rgba(47,143,158,.24);
  box-shadow: var(--fc-shadow-sm);
}

.fc-op-card-h{ display:flex; gap: 12px; align-items:flex-start; }

.fc-op-icon{
  width: 38px;
  height: 38px;
  border-radius: 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight: 900;
  color: rgba(7,53,64,.92);
  background:
    radial-gradient(80px 40px at 18% 18%, rgba(255,255,255,.92), rgba(255,255,255,0) 62%),
    linear-gradient(180deg, rgba(47,143,158,.22), rgba(47,143,158,.10));
  border: 1px solid rgba(47,143,158,.22);
  box-shadow: 0 12px 24px rgba(5,43,51,.08);
  flex: 0 0 auto;
}

.fc-op-title{ font-weight: 900; letter-spacing: -0.01em; font-size: 16px; margin: 0; }
.fc-op-desc{ margin-top: 6px; }

.fc-op-foot{
  margin-top: 12px;
  font-weight: 900;
  font-size: 13px;
  color: rgba(10,120,144,.96);
  display:flex;
  align-items:center;
  gap: 8px;
}

.fc-op-cta{ margin-top: 14px; }

.fc-op-split{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 14px;
}
@media (max-width: 980px){
  .fc-op-split{ grid-template-columns: 1fr; }
}

.fc-panel{
  padding: 16px;
  border-radius: var(--fc-radius-card);
  border: 1px solid var(--fc-border);
  background: rgba(255,255,255,.90);
  box-shadow: var(--fc-shadow-xs);
}

.fc-list{
  margin: 0;
  padding-left: 1.05em;
  line-height: 1.75;
  color: rgba(9,60,74,.78);
}
.fc-list li{ margin: 6px 0; }

.fc-actions{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 12px;
}

.fc-actions .btn{
  flex: 1 1 170px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.fc-footnote{
  margin-top: 14px;
  opacity: .82;
}

@media (hover: none) and (pointer: coarse){
  .fc-op-card:hover{ transform: none; box-shadow: var(--fc-shadow-xs); }
  .fc-back:hover{ transform: none; }
}

/* ===============================
   v197 — /energia + /prosfora premium unification
   - Remove inline styles (pages)
   - Shared content utilities (lead, spacing, alerts)
   - Purposeful inline links in notes/consent
   =============================== */

/* Lead text (shared) */
.fc-lead{
  max-width: 78ch;
  margin: 0 0 18px;
}

/* Small spacing utilities (content only) */
.fc-space-sm{ height: 12px; }
.fc-mt-sm{ margin-top: 12px !important; }
.fc-mt-md{ margin-top: 14px !important; }
.fc-mb-sm{ margin-bottom: 10px !important; }

.fc-muted{ color: rgba(11,18,32,.55); }
.fc-muted-strong{ color: rgba(11,18,32,.68); }

/* Info card (top guidance) */
.fc-info-card{
  max-width: 980px;
  margin: 0 0 18px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(47,143,158,.16);
  background:
    radial-gradient(780px 280px at 12% 12%, rgba(47,143,158,.10), rgba(255,255,255,0) 62%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.82));
  box-shadow: 0 18px 44px rgba(6,24,32,.06);
}
.fc-info-card__title{ font-weight: 900; margin-bottom: 8px; }
.fc-info-card__list{ margin: 0; padding-left: 18px; }

/* Alerts */
.fc-alert{
  max-width: 980px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(200,40,40,.22);
  background: rgba(255,255,255,.90);
  box-shadow: 0 18px 44px rgba(6,24,32,.06);
}
.fc-alert__title{ color:#9b1c1c; font-weight: 900; }
.fc-alert__list{ margin: 8px 0 0; padding-left: 18px; }

/* Prosfora: narrow success card */
.fc-form-card--narrow{ max-width: 840px; }

/* Consent block: make links intentional without underline */
.fc-consent{ display:block; margin-top: 6px; }
.fc-consent a{
  color: rgba(10,120,144,.96) !important;
  border-bottom: 1px solid rgba(10,120,144,.28);
}
.fc-consent a:hover{ border-bottom-color: rgba(10,120,144,.46); }

/* Notes: tighter titles + ref */
.fc-note__title{ font-weight: 900; margin-bottom: 6px; }
.fc-note__sub{ margin-top: 6px; color: rgba(11,18,32,.60); }
.fc-ref{ font-weight: 900; letter-spacing: .08em; }

/* Captcha */
.fc-captcha__title{ font-weight: 900; margin: 12px 0 8px; }
.fc-captcha-row{ grid-template-columns: 1fr 220px; align-items: end; }
@media (max-width: 700px){
  .fc-captcha-row{ grid-template-columns: 1fr !important; }
}
.fc-captcha-hint{ color: rgba(11,18,32,.65); }

/* Disclaimer text (shared) */
.fc-disclaimer{ margin: 12px 0 0; color: rgba(11,18,32,.55); }

/* Energia: keep card actions aligned */
.fc-energy .fc-energy-card .fc-actions{ margin-top: 12px; }

.fc-alert--danger{ border-color: rgba(200,40,40,.25); }

/* ===== FlexiCare – UI System: Buttons + Forms + Cards (v209) =====
   Scope: content areas only (section/policy/hero2). Nav/header untouched.
   Goal: premium, consistent, mobile-safe.
*/
:root{
  --fc-radius-lg: 20px;
  --fc-radius-md: 16px;
  --fc-radius-sm: 14px;

  --fc-line: rgba(15,23,42,.10);
  --fc-line-strong: rgba(15,23,42,.14);
  --fc-surface: rgba(255,255,255,.92);
  --fc-surface-2: rgba(255,255,255,.78);

  --fc-ring: rgba(47,143,158,.40);
  --fc-ring-strong: rgba(47,143,158,.58);

  --fc-shadow-1: 0 12px 34px rgba(15,23,42,.06);
  --fc-shadow-2: 0 18px 52px rgba(15,23,42,.10);

  --fc-link: var(--brand-teal);
  --fc-link-hover: var(--petrol-700);
}

/* ---------- Buttons (content only) ---------- */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn{
  min-height: 44px;
  padding: 11px 16px;
  border-radius: var(--fc-radius-sm);
  font-weight: 700;
  letter-spacing: .2px;
  line-height: 1;
  border: 1px solid var(--fc-line);
  background: var(--fc-surface);
  color: var(--text);
  box-shadow: 0 10px 26px rgba(15,23,42,.05);
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease, background .14s ease;
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn:hover{
  transform: translateY(-1px);
  box-shadow: var(--fc-shadow-1);
  border-color: rgba(47,143,158,.22);
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn:active{
  transform: translateY(0);
  box-shadow: 0 8px 18px rgba(15,23,42,.05);
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn:focus-visible{
  outline: 2px solid var(--fc-ring-strong);
  outline-offset: 2px;
}

/* Primary */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.primary,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.btn-primary{
  border-color: transparent;
  color: #fff;
  background: linear-gradient(180deg, var(--petrol-700), var(--brand-teal));
  box-shadow: 0 16px 34px rgba(21,106,124,.18);
}
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.primary:hover,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.btn-primary:hover{
  box-shadow: 0 20px 44px rgba(21,106,124,.24);
  transform: translateY(-1px);
}

/* Ghost / Secondary */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.ghost,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.secondary,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.btn-ghost{
  background: rgba(255,255,255,.55);
  border-color: var(--fc-line);
  box-shadow: none;
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.ghost:hover,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.secondary:hover,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.btn-ghost:hover{
  background: rgba(255,255,255,.72);
  border-color: rgba(47,143,158,.18);
}

/* Small buttons */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.small,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn.btn-sm{
  min-height: 38px;
  padding: 9px 12px;
  border-radius: 12px;
  font-size: 13px;
}

/* Disabled */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn:disabled,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn[aria-disabled="true"]{
  opacity: .6;
  cursor: not-allowed;
  transform: none !important;
  box-shadow: none !important;
}

/* ---------- Forms (content only) ---------- */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .form{
  gap: 12px;
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .input,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .select,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .textarea{
  border-radius: var(--fc-radius-sm);
  border: 1px solid var(--fc-line);
  background: rgba(255,255,255,.95);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .input,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .select{
  min-height: 44px;
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .textarea{
  min-height: 132px;
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .input:focus,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .select:focus,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .textarea:focus{
  outline: 2px solid var(--fc-ring);
  outline-offset: 2px;
}

@media (max-width: 720px){
  :where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .form-row{
    grid-template-columns: 1fr !important;
  }
}

/* Notes + consent links */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .note{
  color: rgba(84,98,115,.92);
  line-height: 1.35;
}
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .note a{
  color: var(--fc-link);
  border-bottom: 1px solid rgba(69,147,159,.35);
  padding-bottom: 1px;
}
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .note a:hover{
  color: var(--fc-link-hover);
  border-bottom-color: rgba(21,106,124,.45);
}

/* data-msg spacing */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) [data-msg]{
  margin-top: 2px;
}
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) [data-msg] .success,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) [data-msg] .error{
  font-size: 13px;
}

/* ---------- Cards (content only) ---------- */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .card,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .fc-card{
  border-radius: var(--fc-radius-lg);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: var(--fc-shadow-1);
  background: linear-gradient(180deg, #fff, rgba(255,255,255,.88));
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) a.card,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .card.is-clickable,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .fc-card.is-clickable{
  cursor: pointer;
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) a.card:hover,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .card.is-clickable:hover,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .fc-card.is-clickable:hover{
  transform: translateY(-2px);
  box-shadow: var(--fc-shadow-2);
  border-color: rgba(47,143,158,.22);
}

/* ---------- Chips (light surfaces) ---------- */
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .fc-card-chip,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .pill,
:where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .chip{
  background: rgba(69,147,159,.10);
  border: 1px solid rgba(69,147,159,.18);
  color: rgba(10,64,76,.92);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  :where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn,
  :where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .card,
  :where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) a.card{
    transition: none !important;
  }
  :where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) .btn:hover,
  :where(.section, .policy-page, .hero2, .fc-shell, .fc-program-body, .fc-program-hub) a.card:hover{
    transform: none !important;
  }
}

/* ===============================
   v211 — /xrisima (Utilities) link-cards refresh
   - Fixes narrow/left-stacked cards after generic card hierarchy updates
   - Adds multi-link regulator cards (Bank of Greece, Consumer Ombudsman)
   - Content-only scope (nav untouched)
   =============================== */

/* Grid for utilities */
.fc-page-head h1{ margin:0; }
.fc-page-head p{ margin:6px 0 0; }
.fc-util-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
@media (max-width: 820px){
  .fc-util-grid{ grid-template-columns: 1fr; }
}

/* Portal sections (headers + spacing) */
.fc-util-section{ margin-top: 18px; }
.fc-util-section:first-of-type{ margin-top: 6px; }

.fc-util-section-head{
  padding: 0 2px 10px;
  border-bottom: 1px solid rgba(47,143,158,.12);
}

.fc-util-eyebrow{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  font-size: 11px;
  letter-spacing: .10em;
  text-transform: uppercase;
  font-weight: 900;
  color: rgba(9,60,74,.62);
}

.fc-util-section-title{
  margin: 6px 0 0;
  font-weight: 950;
  letter-spacing: -0.01em;
  font-size: 15px;
  line-height: 1.25;
  color: rgba(7,53,64,.94);
}

.fc-util-section-sub{
  margin: 6px 0 0;
  color: rgba(9,60,74,.70);
  font-size: 12.75px;
  line-height: 1.45;
  max-width: 78ch;
}


/* /xrisima docs (accordion meta) */
.fc-docs-meta{
  font-weight: 800;
  color: rgba(9,60,74,.66);
  white-space: nowrap;
}

@media (max-width: 520px){
  .fc-docs-meta{ white-space: normal; }
}


/* /xrisima docs cards (match link-card look + expandable body) */
.fc-link-card.fc-doc-card{ display: block; padding: 0; gap: 0; align-items: stretch; }
.fc-doc-card summary::-webkit-details-marker{ display: none; }
.fc-doc-card__summary{
  display:flex;
  align-items:flex-start;
  gap: 12px;
  width: 100%;
  padding: 14px 14px;
  cursor: pointer;
  list-style: none;
}
.fc-doc-card__main{
  display:flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
  min-width: 0;
}
.fc-doc-card__chev{
  margin-left: auto;
  opacity: .75;
  transition: transform .18s ease;
}
.fc-doc-card[open] .fc-doc-card__chev{ transform: rotate(180deg); }
.fc-doc-card__body{
  padding: 0 14px 14px 44px;
}
@media (max-width: 640px){
  .fc-doc-card__body{ padding-left: 14px; }
}


.fc-util-section .fc-util-grid{ margin-top: 12px; }

@media (max-width: 640px){
  .fc-util-section{ margin-top: 16px; }
  .fc-util-section:first-of-type{ margin-top: 4px; }
  .fc-util-section-title{ font-size: 14.5px; }
}

/* Link-card base */
.fc-link-card{
  display:flex;
  gap: 12px;
  align-items:flex-start;
  width: 100%;
  padding: 14px 14px;
  border-radius: var(--fc-radius-card);
  border: 1px solid var(--fc-border);
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,251,252,.90));
  box-shadow: var(--fc-shadow-1);
}

a.fc-link-card{
  text-decoration: none !important;
  color: inherit;
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

a.fc-link-card:hover{
  transform: translateY(-2px);
  box-shadow: var(--fc-shadow-2);
  border-color: rgba(47,143,158,.22);
}

.fc-link-card[role="group"]{
  transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}
.fc-link-card[role="group"]:hover{
  transform: translateY(-1px);
  box-shadow: var(--fc-shadow-2);
  border-color: rgba(47,143,158,.22);
}


.fc-link-card__body{ min-width: 0; flex: 1 1 auto; }

.fc-link-card__title{
  font-weight: 920;
  letter-spacing: -0.01em;
  font-size: 14px;
  line-height: 1.2;
  color: rgba(7,53,64,.94);
}

.fc-link-card__role,
.fc-link-card__desc{
  margin-top: 6px;
  color: rgba(9,60,74,.70);
  font-size: 12.75px;
  line-height: 1.45;
}

.fc-link-card__desc{ margin-top: 6px; }

/* Icon badge */
.fc-icon-badge{
  width: 34px;
  height: 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 12px;
  border: 1px solid rgba(43,138,148,.20);
  background: rgba(43,138,148,.08);
  flex: 0 0 34px;
}
.fc-icon-badge svg{ display:block; }

/* Multi-links inside a card */
.fc-link-list{
  margin-top: 10px;
  display:flex;
  align-items:center;
  flex-wrap: wrap;
  gap: 8px;
}

.fc-link-list a{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(47,143,158,.08);
  border: 1px solid rgba(47,143,158,.16);
  color: rgba(9,60,74,.86) !important;
  font-weight: 850;
  font-size: 12px;
  text-decoration: none !important;
  transition: transform .12s ease, background .12s ease, border-color .12s ease;
}

.fc-link-list a:hover{
  background: rgba(47,143,158,.12);
  border-color: rgba(47,143,158,.22);
  transform: translateY(-1px);
}

.fc-link-list a[data-ext="1"]::after{
  content: "↗";
  opacity: .6;
  font-weight: 900;
}

/* Small footer note */
.fc-util-note{
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: var(--fc-radius-card);
  border: 1px solid rgba(47,143,158,.14);
  background: rgba(47,143,158,.06);
  color: rgba(9,60,74,.68);
}

/* Xrisima — sticky mini TOC */
.fc-util-toc{
  position: sticky;
  top: 84px;
  z-index: 5;
  margin: 12px 0 4px;
  padding: 10px 10px;
  border-radius: var(--fc-radius-card);
  border: 1px solid rgba(47,143,158,.14);
  background: rgba(255,255,255,.86);
  backdrop-filter: blur(10px);
  box-shadow: var(--fc-shadow-1);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 10px;
}

.fc-util-toc__label{
  font-size: 11px;
  letter-spacing: .10em;
  text-transform: uppercase;
  font-weight: 950;
  color: rgba(9,60,74,.62);
  padding: 0 6px;
  white-space: nowrap;
}

.fc-util-toc__links{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content:flex-end;
}

.fc-util-toc__link{
  display:inline-flex;
  align-items:center;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(47,143,158,.08);
  border: 1px solid rgba(47,143,158,.16);
  color: rgba(9,60,74,.88) !important;
  font-weight: 900;
  font-size: 12px;
  text-decoration: none !important;
  transition: transform .12s ease, background .12s ease, border-color .12s ease;
}

.fc-util-toc__link:hover{
  background: rgba(47,143,158,.12);
  border-color: rgba(47,143,158,.22);
  transform: translateY(-1px);
}

.fc-util-toc__link:focus-visible{
  outline: none;
  box-shadow: 0 0 0 4px rgba(47,143,158,.16);
}

/* Active section indicator (mini-TOC) */
.fc-util-toc__link.is-active,
.fc-util-toc__link[aria-current="page"]{
  background: rgba(47,143,158,.18);
  border-color: rgba(47,143,158,.34);
  color: rgba(7,53,64,.96) !important;
  box-shadow: 0 8px 18px rgba(6,24,32,.10);
}

.fc-util-toc__link.is-active::before,
.fc-util-toc__link[aria-current="page"]::before{
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: rgba(47,143,158,.78);
  box-shadow: 0 0 0 3px rgba(47,143,158,.12);
  margin-right: 8px;
}

.fc-util-toc__link.is-active:hover,
.fc-util-toc__link[aria-current="page"]:hover{
  transform: none;
}


@media (max-width: 820px){
  .fc-util-toc{
    position: static;
    backdrop-filter: none;
    justify-content:flex-start;
  }
  .fc-util-toc__links{ justify-content:flex-start; }
}

/* Anchor offset so headers don't hide under sticky header */
.fc-util-section{ scroll-margin-top: 120px; }

/* "Official" badge for regulators */
.fc-official-chip{
  display:inline-flex;
  align-items:center;
  padding: 4px 9px;
  margin-left: 8px;
  border-radius: 999px;
  border: 1px solid rgba(47,143,158,.20);
  background: rgba(47,143,158,.10);
  color: rgba(9,60,74,.78);
  font-size: 10.5px;
  font-weight: 950;
  letter-spacing: .06em;
  text-transform: uppercase;
  vertical-align: middle;
}

/* ------------------------------------------------------------
   V236 – Button states (hover/focus/disabled) + mobile tap polish
   Goal: consistent, premium, mobile-friendly interactions.
------------------------------------------------------------ */

/* Tap/interaction ergonomics */
.btn{
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  user-select: none;
  text-decoration: none !important;
}

/* Keyboard focus ring (no purple, no ugly default outline) */
.btn:focus{ outline: none; }
.btn:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 4px rgba(47,143,158,.22),
    0 14px 30px rgba(5,43,51,.10);
}

/* Press state (mobile + desktop) */
.btn:active{
  transform: translateY(0) scale(.985);
  filter: brightness(.985);
}

/* Disabled state (buttons + aria-disabled links) */
.btn:disabled,
.btn[aria-disabled="true"],
a.btn[aria-disabled="true"],
.btn.is-disabled,
a.btn.is-disabled{
  opacity: .58;
  cursor: not-allowed;
  pointer-events: none;
  transform: none !important;
  box-shadow: none !important;
  filter: grayscale(.06);
}

/* Reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce){
  .btn{ transition: none !important; }
  .btn:active{ transform: none !important; }
}

/* ------------------------------------------------------------
   V237 – Typography + spacing tokens (content only)
   Goal: one scale everywhere, minimal risk (nav untouched)
------------------------------------------------------------ */

:root{
  /* Type scale */
  --fc-fs-h1: clamp(24px, 2.3vw, 32px);
  --fc-fs-h2: clamp(16px, 1.7vw, 20px);
  --fc-fs-h3: 15px;
  --fc-fs-body: 15.5px;
  --fc-fs-small: 13.5px;

  /* Line heights */
  --fc-lh-h1: 1.15;
  --fc-lh-h2: 1.25;
  --fc-lh-h3: 1.35;
  --fc-lh-body: 1.75;
  --fc-lh-small: 1.55;

  /* Letter spacing */
  --fc-ls-tight: -0.02em;
  --fc-ls-normal: -0.01em;

  /* Spacing scale */
  --fc-sp-1: 6px;
  --fc-sp-2: 10px;
  --fc-sp-3: 12px;
  --fc-sp-4: 14px;
  --fc-sp-5: 18px;
  --fc-sp-6: 24px;
  --fc-sp-7: 34px;

  /* Section padding */
  --fc-section-pad-y: 34px;
  --fc-section-pad-y-mobile: 26px;
}

/* Base typography (content only) */
:where(.section, .hero2, .policy-page, .fc-program-hub, .fc-program-detail, .fc-program-body, .fc-shell){
  font-size: var(--fc-fs-body);
  line-height: var(--fc-lh-body);
}

/* Section padding uses tokens */
:where(.section){ padding: var(--fc-section-pad-y) 0; }
@media (max-width: 820px){
  :where(.section){ padding: var(--fc-section-pad-y-mobile) 0; }
}

/* Headings */
:where(.section) .fc-h1{
  font-size: var(--fc-fs-h1);
  line-height: var(--fc-lh-h1);
  letter-spacing: var(--fc-ls-tight);
}

.fc-h2{
  font-size: var(--fc-fs-h2);
  line-height: var(--fc-lh-h2);
  letter-spacing: var(--fc-ls-normal);
  margin: 0 0 var(--fc-sp-2);
}

:where(.section) .small{
  font-size: var(--fc-fs-small);
  line-height: var(--fc-lh-small);
}

/* Leads + small spacing utilities */
.fc-lead{ margin: 0 0 var(--fc-sp-6); }
.fc-space-sm{ height: var(--fc-sp-3); }
.fc-mt-sm{ margin-top: var(--fc-sp-3) !important; }
.fc-mt-md{ margin-top: var(--fc-sp-4) !important; }
.fc-mb-sm{ margin-bottom: var(--fc-sp-2) !important; }

.fc-page-head{ margin-bottom: var(--fc-sp-4); }
.fc-footnote{ margin-top: var(--fc-sp-4); }

/* Program body headings (many overrides are plain h2/h3) */
.fc-program-body h2{
  font-size: var(--fc-fs-h2);
  line-height: var(--fc-lh-h2);
  letter-spacing: var(--fc-ls-normal);
  margin: var(--fc-sp-6) 0 var(--fc-sp-3);
}

.fc-program-body h3{
  font-size: var(--fc-fs-h3);
  line-height: var(--fc-lh-h3);
  letter-spacing: var(--fc-ls-normal);
  margin: var(--fc-sp-5) 0 var(--fc-sp-2);
}

.fc-program-body p,
.fc-program-body li{
  font-size: var(--fc-fs-body);
  line-height: var(--fc-lh-body);
}

.fc-program-body ul{ margin: 0 0 var(--fc-sp-4); }

/* /xrisima section titles */
.fc-util-section-title{
  font-size: var(--fc-fs-h2);
  line-height: var(--fc-lh-h2);
}

.fc-util-section-sub{
  font-size: var(--fc-fs-small);
  line-height: 1.45;
  margin: var(--fc-sp-2) 0 0;
}


/* --- Perf: reserve space for header brand logo without touching header/nav markup --- */
.site-header .brand img{ aspect-ratio: 736 / 842; }


/* -----------------------------
   Internal stats (staging-only)
   Scoped classes to avoid side effects
------------------------------ */
.fc-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}
.fc-stat-card{background:rgba(255,255,255,.78);border:1px solid rgba(35,123,133,.14);border-radius:18px;padding:14px;box-shadow:0 10px 26px rgba(18,38,63,.06)}
.fc-stat-label{font-size:12px;letter-spacing:.02em;opacity:.82;text-transform:uppercase}
.fc-stat-value{font-size:28px;line-height:1.1;margin-top:6px;font-weight:800}
.fc-stat-sub{margin-top:6px;font-size:12.5px;opacity:.82}
.fc-stat-day{background:rgba(255,255,255,.72);border:1px solid rgba(35,123,133,.12);border-radius:18px;padding:10px 12px}
.fc-stat-day>summary{cursor:pointer;list-style:none;display:flex;gap:10px;align-items:center;justify-content:space-between}
.fc-stat-day>summary::-webkit-details-marker{display:none}
.fc-stat-day__date{font-weight:800}
.fc-stat-day__kpis{display:flex;gap:10px;flex-wrap:wrap;font-size:12.5px;opacity:.9}
.fc-stat-day__body{padding-top:10px}
.fc-stat-events{display:flex;flex-wrap:wrap;gap:8px}
.fc-stat-chip{display:inline-flex;gap:8px;align-items:center;background:rgba(35,123,133,.08);border:1px solid rgba(35,123,133,.16);padding:6px 10px;border-radius:999px}
.fc-stat-chip__k{font-size:12.5px}
.fc-stat-chip__v{font-size:12.5px;font-weight:800}


/* Claim attachments */
.fc-form .fc-filewrap { display:block; width:100%; }
.fc-form .fc-file{
  display:block;
  width:100%;
  padding:10px 12px;
  border:1px solid rgba(35,123,133,.20);
  border-radius:14px;
  background:#fff;
}
.fc-form .fc-file::-webkit-file-upload-button{
  border:0;
  padding:8px 12px;
  margin-right:10px;
  border-radius:12px;
  background:rgba(35,123,133,.10);
  color:rgba(17,73,80,1);
  cursor:pointer;
}
/* === V304: form validation + loading states === */
.input.is-invalid,
.textarea.is-invalid,
.select.is-invalid,
.fc-form .fc-file.is-invalid{
  border-color: rgba(210, 60, 60, .85) !important;
  box-shadow: 0 0 0 3px rgba(210, 60, 60, .12) !important;
}

.fc-consent.is-invalid{
  border: 1px solid rgba(210, 60, 60, .65);
  border-radius: 14px;
  padding: 10px 12px;
  background: rgba(210, 60, 60, .06);
}

.fc-filewrap.is-invalid{
  border: 1px solid rgba(210, 60, 60, .55);
  border-radius: 14px;
  padding: 10px 12px;
  background: rgba(210, 60, 60, .04);
}

.btn.is-loading{
  position: relative;
  opacity: .9;
  pointer-events: none;
}

.btn.is-loading::after{
  content: '';
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 10px;
  border: 2px solid currentColor;
  border-top-color: transparent;
  border-radius: 999px;
  vertical-align: -2px;
  animation: fcSpin .9s linear infinite;
}

@keyframes fcSpin{
  to{ transform: rotate(360deg); }
}

/* === V308: Skip link + main wrapper (A11y + valid markup) === */
.skip-link{
  position:absolute;
  top:10px;
  left:-9999px;
  z-index:9999;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(35,123,133,.25);
  background:#fff;
  color:rgba(17,73,80,1);
  text-decoration:none;
  box-shadow:0 10px 26px rgba(18,38,63,.12);
}
.skip-link:focus{ left:12px; }

.fc-main{ display:block; }


/* === V315: News (blog) + TOC === */
.fc-news-grid{
  display:grid;
  grid-template-columns: 1fr;
  gap:14px;
}
@media (min-width: 860px){
  .fc-news-grid{ grid-template-columns: 1fr 1fr; gap:16px; }
}
@media (min-width: 1120px){
  .fc-news-grid{ grid-template-columns: 1fr 1fr 1fr; }
}

.fc-post-card{
  position:relative;
  display:block;
  height:100%;
  text-decoration:none;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(18,38,63,.10);
  box-shadow: 0 10px 24px rgba(18,38,63,.06);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.fc-post-card:hover{
  transform: translateY(-2px);
  border-color: rgba(35,123,133,.28);
  box-shadow: 0 14px 30px rgba(18,38,63,.10);
}
.fc-post-card__top{
  height: 8px;
  background: linear-gradient(90deg, rgba(35,123,133,.65), rgba(119,206,201,.55));
}
.fc-post-card__body{ padding:14px 14px 16px; display:flex; flex-direction:column; min-height:calc(100% - 8px); }
.fc-post-card__meta{
  display:flex;
  align-items:center;
  gap:8px;
  font-size: 12px;
  color: rgba(17,73,80,.86);
  margin-bottom:10px;
  flex-wrap:wrap;
}
.fc-post-card__title{
  font-weight: 750;
  letter-spacing: -.2px;
  color: rgba(17,73,80,1);
  font-size: 16px;
  line-height: 1.25;
  margin-bottom: 8px;
}
.fc-post-card__desc{
  color: rgba(18,38,63,.78);
  line-height: 1.55;
}
.fc-post-card__cta{
  margin-top:auto;
  padding-top:12px;
  font-weight: 700;
  color: rgba(35,123,133,1);
}
.fc-post-card:focus-visible,
.fc-news-topic-nav__pill:focus-visible,
.fc-article-section-nav__pill:focus-visible,
.fc-news-jump:focus-visible{
  outline: 2px solid rgba(35,123,133,.42);
  outline-offset: 3px;
}

.fc-article-meta__sep{ opacity:.55; }

.fc-article-chip{
  display:inline-flex;
  align-items:center;
  padding: 4px 9px;
  border-radius: 999px;
  border: 1px solid rgba(35,123,133,.22);
  background: rgba(35,123,133,.08);
  color: rgba(17,73,80,1);
  font-weight: 700;
}
.fc-article-chip--auto{
  border-color: rgba(35,123,133,.28);
  background: rgba(35,123,133,.10);
}
.fc-article-chip--biz{
  border-color: rgba(60,122,210,.22);
  background: rgba(60,122,210,.08);
  color: rgba(24,64,120,1);
}
.fc-article-chip--home{
  border-color: rgba(40,160,120,.22);
  background: rgba(40,160,120,.08);
  color: rgba(20,90,65,1);
}

.fc-article-page{
  padding: 18px;
}
@media (min-width: 860px){
  .fc-article-page{ padding: 22px; }
}

.fc-article-head{ margin-bottom: 12px; }
.fc-article-title{ margin-top: 10px; margin-bottom: 8px; }
.fc-article-lead{
  margin-top: 6px;
  color: rgba(18,38,63,.82);
  line-height: 1.6;
}

.fc-article-layout{
  display:block;
  margin-top: 14px;
}
@media (min-width: 980px){
  .fc-article-layout{
    display:grid;
    grid-template-columns: minmax(0,1fr) 290px;
    gap: 18px;
    align-items:start;
  }
}

.fc-article-body{
  color: rgba(18,38,63,.88);
  line-height: 1.75;
  font-size: 15px;
}
.fc-article-body h2{
  margin-top: 18px;
  margin-bottom: 8px;
  font-size: 18px;
  letter-spacing: -.2px;
  color: rgba(17,73,80,1);
}
.fc-article-body h3{
  margin-top: 14px;
  margin-bottom: 6px;
  font-size: 15px;
  color: rgba(17,73,80,1);
}
.fc-article-body ul, .fc-article-body ol{
  padding-left: 18px;
}
.fc-article-body li{ margin: 6px 0; }

.fc-article-callout{
  margin: 14px 0;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(35,123,133,.20);
  background: rgba(35,123,133,.06);
}
.fc-article-callout h3{ margin-top: 0; }

.fc-article-tldr{
  border: 1px solid rgba(35,123,133,.20);
  background: rgba(35,123,133,.05);
  border-radius: 16px;
  padding: 12px 14px;
  margin-bottom: 14px;
}
.fc-article-tldr__line{ margin-bottom: 8px; }
.fc-article-takeaways{
  margin: 0;
  padding-left: 18px;
}
.fc-article-takeaways li{ margin: 6px 0; }

.fc-toc{
  border: 1px solid rgba(18,38,63,.12);
  background: rgba(255,255,255,.85);
  border-radius: 16px;
  padding: 12px 14px;
}
.fc-toc summary{
  cursor:pointer;
  font-weight: 750;
  color: rgba(17,73,80,1);
}
.fc-toc ol{
  margin: 10px 0 0;
  padding-left: 18px;
}
.fc-toc a{
  color: rgba(35,123,133,1);
  text-decoration: none;
}
.fc-toc a:hover{ text-decoration: underline; }

.fc-toc--mobile{ margin-bottom: 14px; }
@media (min-width: 980px){
  .fc-toc--mobile{ display:none; }
}

.fc-toc--side{
  display:none;
}
@media (min-width: 980px){
  .fc-toc--side{
    display:block;
    position: sticky;
    top: 92px;
  }
}
.fc-toc__title{
  font-weight: 800;
  color: rgba(17,73,80,1);
  margin-bottom: 10px;
}
.fc-toc__mini{
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(18,38,63,.10);
  font-size: 13px;
}

.fc-article-bottom{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(18,38,63,.10);
}

.fc-article-related{
  margin-top: 18px;
}
.fc-article-related__head{
  margin: 12px 0;
}

/* ===== FlexiCare – Contact layout (V319) ===== */
.fc-contact-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-items: start;
}
@media (min-width: 1100px){
  .fc-contact-grid{ grid-template-columns: 1fr 1fr 1fr; }
}
@media (max-width: 820px){
  .fc-contact-grid{ grid-template-columns: 1fr; }
}
/* ===== FlexiCare – Hub Quick Nav + Back to Top (V326) ===== */
.fc-quicknav{
  margin: 14px 0 18px;
  padding: 12px 12px;
  border-radius: 18px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.82);
  box-shadow: 0 14px 34px rgba(6,24,32,.08);
}
.fc-quicknav__label{
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 900;
  color: rgba(15,23,42,.55);
  margin: 0 0 10px;
}
.fc-quicknav__row{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}
.fc-qn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid rgba(47,143,158,.18);
  background: rgba(47,143,158,.10);
  color: rgba(7,53,64,.96);
  font-weight: 900;
  font-size: 13px;
  white-space: nowrap;
}
.fc-qn:hover{ background: rgba(47,143,158,.14); }
.fc-program-tile{ scroll-margin-top: 110px; }

@media (max-width: 820px){
  .fc-quicknav{
    padding: 10px;
    position: sticky;
    top: 64px;
    z-index: 48;
    margin: 10px 0 14px;
    background: rgba(255,255,255,.90);
  }
  .fc-quicknav__row{
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding: 0 6px 6px;
    scroll-snap-type: x proximity;
    -webkit-mask-image: linear-gradient(to right, transparent, #000 16px, #000 calc(100% - 16px), transparent);
            mask-image: linear-gradient(to right, transparent, #000 16px, #000 calc(100% - 16px), transparent);
  }
  .fc-quicknav__row::-webkit-scrollbar{ display:none; }
  .fc-qn{ flex: 0 0 auto; scroll-snap-align: start; }
  .fc-program-tile{ scroll-margin-top: 140px; }
}

/* V363: Mobile sticky Quick Nav + edge fade (mask) */
/* Mobile “Back to top” (only where button exists) */
.fc-backtop{
  position: fixed;
  right: 14px;
  bottom: calc(108px + env(safe-area-inset-bottom));
  z-index: 55;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.12);
  background: rgba(255,255,255,.92);
  box-shadow: 0 14px 30px rgba(6,24,32,.14);
  display: none;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  line-height: 1;
}
.fc-backtop.is-visible{ display: flex; }
@media (min-width: 821px){
  .fc-backtop{ display:none !important; }
}


/* V349: Mobile Sticky CTA (News + Hubs) */

.fc-sticky-cta,
.fc-sticky-cta--hub{ display:none; }

.fc-hub-sticky-bottom{ height:1px; }

@media (max-width: 820px){
  /* News posts */
  .fc-article-main{ padding-bottom: calc(78px + var(--fc-cookie-offset, 0px)); }
  .fc-news-cta-row{ display:none; }
  .fc-sticky-cta{
    position: fixed;
    left: 12px; right: 12px;
    bottom: calc(10px + var(--fc-cookie-offset, 0px) + env(safe-area-inset-bottom));
    z-index: 60;
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 10px 10px;
    border-radius: 16px;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(15,23,42,.10);
    box-shadow: 0 18px 44px rgba(6,24,32,.16);
    backdrop-filter: blur(10px);
  }
  .fc-sticky-cta .btn{ flex: 1 1 0; justify-content:center; padding: 11px 12px; }
  .fc-sticky-cta__link{ white-space:nowrap; font-weight: 800; font-size: 13px; color: rgba(11,18,32,.80); padding: 0 6px; }
  .fc-sticky-cta.is-hidden{ display:none; }

  /* Hub pages */
  .fc-program-hub .container{ padding-bottom: 92px; }
  .fc-sticky-cta--hub{
    position: fixed;
    left: 12px; right: 12px;
    bottom: calc(10px + var(--fc-cookie-offset, 0px) + env(safe-area-inset-bottom));
    z-index: 60;
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 10px 10px;
    border-radius: 16px;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(15,23,42,.10);
    box-shadow: 0 18px 44px rgba(6,24,32,.16);
    backdrop-filter: blur(10px);
  }
  .fc-sticky-cta--hub .btn{ flex: 1 1 0; justify-content:center; padding: 11px 12px; white-space:nowrap; }
  .fc-sticky-cta--hub.is-hidden{ display:none; }
}

/* V353: News bottom CTA row (no inline styles) */
.fc-news-cta-row{
  display:flex;
  gap:10px;
  flex-wrap:nowrap;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  padding-bottom:2px;
}
.fc-news-cta-row::-webkit-scrollbar{ display:none; }
.fc-news-cta-row .btn{
  white-space:nowrap;
  flex:0 0 auto;
}


/* V361: Anchor scroll offset + :target highlight (Quick-nav usability) */
.fc-program-tile,
.fc-picks{
  scroll-margin-top: 112px;
}

@media (max-width: 820px){
  .fc-program-tile,
  .fc-picks{
    scroll-margin-top: 140px;
  }
}

.fc-picks:target,
.fc-program-tile:target{
  outline: 2px solid rgba(47,143,158,.35);
  outline-offset: 6px;
}

/* V362: Accessibility polish (focus states + reduced motion) */
.fc-qn:focus-visible{
  outline: 2px solid rgba(47,143,158,.65);
  outline-offset: 3px;
  box-shadow: 0 0 0 4px rgba(47,143,158,.12);
}

.fc-pick-card:focus-visible,
.fc-program-tile:focus-visible{
  outline: 2px solid rgba(47,143,158,.55);
  outline-offset: 4px;
  border-color: rgba(47,143,158,.30);
  box-shadow: var(--fc-shadow-md);
  transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce){
  .fc-pick-card,
  .fc-program-tile,
  .btn,
  .fc-backtop{
    transition: none !important;
  }
  .fc-pick-card:hover,
  .fc-program-tile:hover{
    transform: none !important;
  }
}

/* ===== V364: Hub program search ===== */
.fc-hub-search{ margin: 18px 0 10px; }
.fc-hub-search__inner{
  display:flex; gap:10px; align-items:center; justify-content:space-between;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.65);
  border-radius:14px;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.fc-hub-search__left{ display:flex; align-items:center; gap:10px; min-width:0; flex:1 1 auto; }
.fc-hub-search__icon{ width:18px; height:18px; opacity:.85; flex:0 0 auto; }
.fc-hub-search input[type="search"]{
  width:100%; min-width:0;
  border:0; background: transparent; outline:none;
  font: inherit;
  padding: 6px 2px;
}
.fc-hub-search__right{ display:flex; align-items:center; gap:10px; flex:0 0 auto; }
.fc-hub-search__count{ font-size:12px; opacity:.75; white-space:nowrap; }
.fc-hub-search__clear{
  border:1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.9);
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  cursor:pointer;
}
.fc-hub-search__clear:disabled{ opacity:.55; cursor:default; }
@media (max-width: 640px){
  .fc-hub-search__count{ display:none; }
}


@media (max-width: 520px){
  .fc-program-tile::after{
    background-size: 128px 128px;
    background-position: right -36px top -34px;
    opacity: .08;
  }
}
/* Home hero alignment */
.hero2-title-center{
  text-align:center;
}
.hero2-tagline{
  display:block;
  margin-top: 10px;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(22,41,55,.60);
}


/* === V569: News clustering on /nea === */
.fc-news-cluster-intro{
  margin-bottom: 18px;
  padding: 18px;
  border-radius: 20px;
  border: 1px solid rgba(18,38,63,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,250,251,.96));
  box-shadow: 0 12px 30px rgba(18,38,63,.05);
}
.fc-news-cluster-intro__title{
  margin: 0 0 6px;
  color: rgba(17,73,80,1);
  font-size: 20px;
  letter-spacing: -.2px;
}
.fc-news-cluster-intro__desc{
  margin: 0;
  color: rgba(18,38,63,.78);
}
.fc-news-cluster-intro__nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.fc-news-jump{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(35,123,133,.18);
  background: rgba(35,123,133,.06);
  color: rgba(17,73,80,1);
  text-decoration:none;
  font-weight:700;
}
.fc-news-jump span{
  font-weight:600;
  color: rgba(18,38,63,.72);
  font-size: 13px;
}
.fc-news-cluster{
  margin-top: 26px;
}
.fc-news-cluster__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom: 14px;
}
.fc-news-cluster__eyebrow{
  display:inline-flex;
  align-items:center;
  padding: 4px 9px;
  border-radius:999px;
  background: rgba(35,123,133,.08);
  color: rgba(17,73,80,.92);
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 8px;
}
.fc-news-cluster__title{
  margin: 0;
  color: rgba(17,73,80,1);
  font-size: 28px;
  letter-spacing: -.4px;
}
.fc-news-cluster__desc{
  margin: 8px 0 0;
  color: rgba(18,38,63,.78);
  max-width: 760px;
}
.fc-news-cluster__toplink{
  color: rgba(35,123,133,1);
  text-decoration:none;
  font-weight:700;
  white-space:nowrap;
}
.fc-news-topic{
  margin-top: 18px;
}
.fc-news-topic__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom: 12px;
}
.fc-news-topic__title{
  margin: 0;
  color: rgba(17,73,80,1);
  font-size: 19px;
  letter-spacing: -.2px;
}
.fc-news-topic__count{
  display:inline-flex;
  align-items:center;
  padding: 4px 9px;
  border-radius:999px;
  border:1px solid rgba(18,38,63,.10);
  background: rgba(255,255,255,.95);
  color: rgba(18,38,63,.72);
  font-size: 12px;
  font-weight:700;
}
@media (max-width: 859px){
  .fc-news-cluster__head,
  .fc-news-topic__head{
    display:block;
  }
  .fc-news-cluster__toplink{
    display:inline-block;
    margin-top:10px;
  }
  .fc-news-topic__count{
    margin-top:8px;
  }
}


/* ===== FlexiCare – News related clusters (V570) ===== */
.fc-article-cluster-meta{
  margin-top: 10px;
  color: #4b647b;
}
.fc-article-cluster-meta a{
  font-weight: 700;
  color: #0d5e8c;
  text-decoration: none;
}
.fc-article-cluster-meta a:hover{ text-decoration: underline; }
.fc-article-related__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
}
.fc-article-related__link{
  white-space:nowrap;
  font-weight:700;
  color:#0d5e8c;
  text-decoration:none;
}
.fc-article-related__link:hover{ text-decoration:underline; }
@media (max-width: 820px){
  .fc-article-related__head{
    flex-direction:column;
    align-items:flex-start;
  }
  .fc-article-related__link{ white-space:normal; }
}


/* === V573: Homepage latest articles consistency === */
.fc-home-news-section{
  padding-top: 10px;
}
.fc-home-news-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 24px;
  margin-bottom: 14px;
}
.fc-home-news-head > div:first-child{
  flex: 1 1 auto;
  min-width: 0;
}
.fc-home-news-actions{
  flex: 0 0 auto;
  display:flex;
  align-items:center;
  gap: 12px;
  flex-wrap: nowrap;
  white-space: nowrap;
}
.fc-home-news-actions .btn{
  min-width: 0;
}
.fc-home-news__eyebrow{
  display:inline-flex;
  align-items:center;
  padding:4px 9px;
  border-radius:999px;
  background: rgba(35,123,133,.08);
  color: rgba(17,73,80,.92);
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 8px;
}
.fc-home-news__title{
  margin:0;
  color: rgba(17,73,80,1);
  font-size: 28px;
  letter-spacing: -.35px;
}
.fc-home-news__desc{
  margin:8px 0 0;
  color: rgba(18,38,63,.78);
  max-width: 760px;
}
@media (max-width: 980px){
  .fc-home-news-head{ display:block; }
  .fc-home-news-actions{ margin-top:12px; flex-wrap:wrap; white-space:normal; }
}

/* === V574: News UX polish (anchors + topic nav + article path) === */
#news-individuals,
#news-businesses,
.fc-news-topic{
  scroll-margin-top: 112px;
}
@media (max-width: 820px){
  #news-individuals,
  #news-businesses,
  .fc-news-topic{
    scroll-margin-top: 138px;
  }
}
#news-individuals:target,
#news-businesses:target,
.fc-news-topic:target{
  outline: 2px solid rgba(35,123,133,.24);
  outline-offset: 6px;
  border-radius: 18px;
}

.fc-news-topic-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin: 0 0 16px;
}
.fc-news-topic-nav__pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid rgba(18,38,63,.10);
  background: rgba(255,255,255,.95);
  color: rgba(17,73,80,1);
  text-decoration:none;
  font-weight:700;
  box-shadow: 0 10px 22px rgba(18,38,63,.04);
}
.fc-news-topic-nav__pill strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width: 24px;
  height: 24px;
  padding: 0 6px;
  border-radius: 999px;
  background: rgba(35,123,133,.10);
  color: rgba(17,73,80,.92);
  font-size: 12px;
}
.fc-news-topic-nav__pill:hover{
  background: rgba(35,123,133,.06);
  border-color: rgba(35,123,133,.18);
}

.fc-article-path{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-top: 8px;
  color: rgba(18,38,63,.66);
}
.fc-article-path a{
  color: rgba(35,123,133,1);
  text-decoration:none;
  font-weight:700;
}
.fc-article-path a:hover{ text-decoration:underline; }
.fc-article-path span{ opacity:.55; }

.fc-article-section-nav{
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid rgba(18,38,63,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,250,251,.96));
}
.fc-article-section-nav__intro{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-bottom: 12px;
  color: rgba(17,73,80,1);
}
.fc-article-section-nav__links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.fc-article-section-nav__pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(35,123,133,.16);
  background: rgba(35,123,133,.06);
  color: rgba(17,73,80,1);
  text-decoration:none;
  font-weight:700;
}
.fc-article-section-nav__pill:hover{
  background: rgba(35,123,133,.10);
}

.fc-toc__mini{
  display:flex;
  flex-direction:column;
  gap:8px;
}

@media (max-width: 820px){
  .fc-news-topic-nav{
    flex-wrap: nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom: 4px;
  }
  .fc-news-topic-nav::-webkit-scrollbar{ display:none; }
  .fc-news-topic-nav__pill{ flex: 0 0 auto; }
  .fc-article-section-nav__links{
    flex-direction:column;
  }
  .fc-article-section-nav__pill{
    justify-content:flex-start;
    width:100%;
  }
}


/* === V577: Final news QA pass (cards + mobile density) === */
@media (max-width: 640px){
  .fc-post-card__body{ padding:12px 12px 14px; }
  .fc-post-card__meta{ gap:6px; font-size: 11px; margin-bottom:8px; }
  .fc-post-card__title{ font-size: 15px; margin-bottom: 6px; }
  .fc-post-card__section{ margin-top: 2px; }
  .fc-post-card__desc{ line-height: 1.5; -webkit-line-clamp: 2; }
  .fc-post-card__cta{ padding-top:10px; }
}

/* === V576: News discoverability + teaser coherence === */
.fc-post-card__section{
  margin-top: 4px;
  color: rgba(17,73,80,.82);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .01em;
}
.fc-post-card__desc{
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}


/* === V578: Service pages -> article clusters pass === */
.fc-service-guides{
  margin-top: 22px;
  padding: 18px;
  border: 1px solid rgba(18,38,63,.10);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,252,252,.98));
  box-shadow: 0 14px 34px rgba(18,38,63,.05);
}
.fc-service-guides__head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}
.fc-service-guides__eyebrow{
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(35,123,133,.92);
  margin-bottom: 6px;
}
.fc-service-guides__title{
  margin: 0;
  font-size: 22px;
  line-height: 1.2;
  color: rgba(9,60,74,.96);
}
.fc-service-guides__desc{
  margin: 8px 0 0;
  max-width: 62ch;
  color: rgba(18,38,63,.78);
}
.fc-service-guides__actions{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.fc-service-guides__grid{
  margin-top: 6px;
}
.fc-service-guides .fc-post-card{
  background: #fff;
}
.fc-service-guides .fc-post-card__title{
  margin-top: 4px;
}
@media (max-width: 900px){
  .fc-service-guides__head{
    flex-direction: column;
  }
  .fc-service-guides__actions{
    justify-content: flex-start;
  }
}
@media (max-width: 640px){
  .fc-service-guides{
    padding: 14px;
    border-radius: 18px;
  }
  .fc-service-guides__title{
    font-size: 19px;
  }
}


/* === V579: Homepage conversion pass === */
.fc-home-paths-section{
  padding-top: 10px;
}
.fc-home-paths-head{
  margin-bottom: 14px;
}
.fc-home-paths__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background: rgba(35,123,133,.10);
  color: rgba(16,87,96,.96);
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.fc-home-paths__title{
  margin: 12px 0 0;
  font-size: clamp(26px, 3vw, 36px);
  line-height: 1.15;
  color: rgba(9,60,74,.97);
}
.fc-home-paths__desc{
  margin: 10px 0 0;
  max-width: 78ch;
  color: rgba(18,38,63,.78);
}
.fc-home-paths-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.fc-home-path-card{
  display:flex;
  flex-direction:column;
  gap: 12px;
  min-height: 100%;
  padding: 20px;
  border:1px solid rgba(18,38,63,.10);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(246,252,252,.97));
  box-shadow: 0 18px 40px rgba(18,38,63,.05);
}
.fc-home-path-card__eyebrow{
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(35,123,133,.95);
}
.fc-home-path-card__title{
  margin:0;
  font-size: 24px;
  line-height:1.18;
  color: rgba(9,60,74,.96);
}
.fc-home-path-card__desc{
  margin:0;
  color: rgba(18,38,63,.78);
}
.fc-home-path-card__list{
  margin:0;
  padding-left: 18px;
  color: rgba(18,38,63,.80);
  line-height: 1.65;
}
.fc-home-path-card__list li + li{
  margin-top: 4px;
}
.fc-home-path-card__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:auto;
}
.fc-home-path-card__microgrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap:10px;
}
.fc-home-path-card__mini{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height: 54px;
  padding: 12px 14px;
  border:1px solid rgba(35,123,133,.14);
  border-radius:16px;
  background: rgba(255,255,255,.9);
  color: rgba(9,60,74,.96);
  font-weight: 700;
  text-align:center;
  text-decoration:none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.4);
}
.fc-home-path-card__mini:hover{
  border-color: rgba(35,123,133,.28);
  transform: translateY(-1px);
}
.fc-home-path-card__note{
  font-size: 13px;
  line-height: 1.6;
  color: rgba(18,38,63,.68);
}
.fc-home-news__foot{
  margin: 14px 4px 0;
  color: rgba(18,38,63,.74);
}
.fc-home-news__foot a{
  color: rgba(12,96,105,.96);
  font-weight: 700;
}
@media (max-width: 980px){
  .fc-home-paths-grid{
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px){
  .fc-home-path-card{
    padding: 16px;
    border-radius: 20px;
  }
  .fc-home-path-card__title{
    font-size: 21px;
  }
  .fc-home-path-card__microgrid{
    grid-template-columns: 1fr;
  }
}

/* === V580: Homepage CTA row + live wording polish === */
.fc-home-paths-head{
  margin-bottom: 12px;
}
.fc-home-paths__desc{
  max-width: 88ch;
}
.fc-home-paths-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 20px;
  margin: 18px 0 0;
  border:1px solid rgba(18,38,63,.10);
  border-radius:24px;
  background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(244,251,251,.96));
  box-shadow: 0 16px 34px rgba(18,38,63,.05);
}
.fc-home-paths-cta__copy{
  min-width:0;
  flex:1 1 auto;
}
.fc-home-paths-cta__title{
  margin:0;
  font-size:22px;
  line-height:1.18;
  color: rgba(9,60,74,.96);
}
.fc-home-paths-cta__desc{
  margin:8px 0 0;
  color: rgba(18,38,63,.76);
  max-width: 72ch;
}
.fc-home-paths-cta__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex:0 0 auto;
  flex-wrap:nowrap;
  white-space:nowrap;
}
.fc-home-paths-cta .btn{
  min-height:48px;
  padding: 0 18px;
  white-space:nowrap;
}
.btn.btn-soft{
  background: rgba(255,255,255,.96);
  border-color: rgba(18,38,63,.10);
  color: rgba(9,60,74,.96);
  box-shadow: none;
}
.btn.btn-soft:hover,
.btn.btn-soft:focus-visible{
  border-color: rgba(35,123,133,.26);
  background: rgba(245,251,251,.98);
}
.fc-home-path-card--wide{
  grid-column: 1 / -1;
}
.fc-home-path-card--wide .fc-home-path-card__microgrid,
.fc-home-path-card--wide .fc-home-path-card__actions{
  max-width: 720px;
}
.fc-anchor-target{
  scroll-margin-top: 118px;
}
@media (max-width: 1180px){
  .fc-home-paths-cta{
    flex-direction:column;
    align-items:flex-start;
  }
  .fc-home-paths-cta__actions{
    justify-content:flex-start;
  }
}
@media (max-width: 760px){
  .fc-home-paths-cta{
    padding:16px;
    border-radius:20px;
  }
  .fc-home-paths-cta__title{
    font-size:20px;
  }
  .fc-home-paths-cta__actions{
    width:100%;
    justify-content:flex-start;
    gap:8px;
    overflow-x:auto;
    padding-bottom:2px;
  }
  .fc-home-paths-cta__actions .btn{
    flex:0 0 auto;
  }
}


/* === V581: Homepage CTA row relocation + inline actions === */


/* === V583: Homepage guides actions moved below intro + true inline row === */
.fc-home-news-head{
  display:block;
  margin-bottom: 10px;
}
.fc-home-news-head__copy{
  max-width: 860px;
}
.fc-home-news-actions-row{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:nowrap;
  white-space:nowrap;
  margin: 0 0 18px;
}
.fc-home-news-actions-row .btn{
  min-height:46px;
  padding: 0 18px;
}
@media (max-width: 980px){
  .fc-home-news-actions-row{
    flex-wrap:wrap;
    white-space:normal;
  }
}
@media (max-width: 640px){
  .fc-home-news-actions-row{
    gap:10px;
    overflow-x:auto;
    padding-bottom:2px;
  }
  .fc-home-news-actions-row .btn{
    flex:0 0 auto;
  }
}


/* ===== FlexiCare – Quote / Contact entry nav (V584) ===== */
.fc-entry-nav{
  margin: 18px 0 20px;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-radius: 24px;
  border: 1px solid rgba(18,38,63,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.84));
  box-shadow: 0 18px 38px rgba(6,24,32,.06);
}
.fc-entry-nav__copy{
  flex: 1 1 420px;
  min-width: 260px;
}
.fc-entry-nav__title{
  margin: 0 0 8px;
  font-size: clamp(22px, 3.1vw, 28px);
}
.fc-entry-nav__desc{
  margin: 0;
  max-width: 760px;
}
.fc-entry-nav__actions{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex: 0 1 auto;
  flex-wrap: wrap;
}
.fc-entry-nav__actions .btn{
  min-height: 50px;
  white-space: nowrap;
}
#stoixeia-epikoinonias,
#minyma,
#rantevou,
#forma-prosforas{
  scroll-margin-top: 118px;
}
@media (max-width: 980px){
  .fc-entry-nav{
    flex-direction: column;
    align-items: flex-start;
  }
  .fc-entry-nav__actions{
    width: 100%;
    justify-content: flex-start;
  }
}
@media (max-width: 640px){
  .fc-entry-nav{
    padding: 16px;
    border-radius: 20px;
  }
  .fc-entry-nav__title{
    font-size: 22px;
  }
  .fc-entry-nav__actions{
    gap: 8px;
  }
  .fc-entry-nav__actions .btn{
    flex: 1 1 100%;
    width: 100%;
    justify-content: center;
  }
}


/* === V586: Service/program visual CTA polish pass === */
.fc-program-top-right{
  position: sticky;
  top: 90px;
  align-self:start;
}
.fc-program-cta-panel{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:16px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,251,252,.98));
  border: 1px solid rgba(18,38,63,.10);
  border-radius: 22px;
  box-shadow: 0 16px 36px rgba(18,38,63,.06);
}
.fc-program-cta-eyebrow{
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color: rgba(35,123,133,.92);
}
.fc-program-cta-title{
  font-size:22px;
  line-height:1.2;
  font-weight:800;
  color: rgba(9,60,74,.96);
}
.fc-program-cta-desc{
  font-size:14px;
  line-height:1.65;
  color: rgba(18,38,63,.78);
}
.fc-program-cta-primary{
  justify-content:center;
}
.fc-program-cta-row,
.fc-program-next-step__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.fc-program-cta-row .btn,
.fc-program-next-step__actions .btn,
.fc-service-guides__actions .btn,
.fc-program-actions .btn{
  white-space:nowrap;
}
.fc-program-note{
  margin-top:2px;
  font-size:12px;
  line-height:1.55;
  color: rgba(9,60,74,.62);
}
.fc-program-next-step{
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,252,252,.96));
}
.fc-program-actions{
  align-items:center;
}
.fc-service-guides__actions{
  align-items:center;
}
@media (max-width: 980px){
  .fc-program-top-right{ position: static; }
}
@media (max-width: 640px){
  .fc-program-cta-panel{
    padding:14px;
    border-radius:18px;
  }
  .fc-program-cta-title{
    font-size:19px;
  }
  .fc-program-cta-row,
  .fc-program-next-step__actions,
  .fc-service-guides__actions,
  .fc-program-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .fc-program-cta-row .btn,
  .fc-program-next-step__actions .btn,
  .fc-service-guides__actions .btn,
  .fc-program-actions .btn{
    width:100%;
    justify-content:center;
  }
}


/* === V587: Program pages shared informational box === */
.fc-program-info-box{
  margin-top: 14px;
  max-width: 72ch;
  padding: 16px 18px;
  background: linear-gradient(180deg, rgba(246,251,252,.96), rgba(241,248,249,.96));
  border: 1px solid rgba(35,123,133,.18);
  border-radius: 22px;
  box-shadow: 0 12px 30px rgba(18,38,63,.05);
}
.fc-program-info-box__title{
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -.01em;
  color: rgba(9,60,74,.95);
}
.fc-program-info-box__body{
  margin: 0;
  font-size: 14px;
  line-height: 1.72;
  color: rgba(18,38,63,.78);
}
@media (max-width: 640px){
  .fc-program-info-box{
    margin-top: 12px;
    padding: 14px 15px;
    border-radius: 18px;
  }
  .fc-program-info-box__title{
    font-size: 14px;
  }
  .fc-program-info-box__body{
    font-size: 13px;
    line-height: 1.65;
  }
}

/* === V588: Program hero/sidebar layout fix === */
.fc-program-top{
  grid-template-columns: 1fr;
  margin-bottom: 18px;
}

.fc-program-sidebar{
  position: sticky;
  top: 90px;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.fc-program-sidebar > .fc-program-nav{
  position: static;
  top: auto;
}

.fc-program-cta-panel--sidebar{
  margin: 0;
}

.fc-program-sidebar .fc-program-nav-head{
  border-bottom: 1px solid rgba(9,60,74,0.10);
}
@media (max-width: 980px){
  .fc-program-sidebar{
    position: static;
    top: auto;
    order: 2;
  }
}

/* === V589: Program hierarchy and sidebar restoration === */
.fc-program-top{
  grid-template-columns: 1fr 320px;
  margin-bottom: 14px;
}

.fc-program-top-right{
  position: sticky;
  top: 90px;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.fc-program-body + .fc-program-info-box,
.fc-soft-card + .fc-program-info-box,
.fc-program-grid + .fc-program-info-box,
.card + .fc-program-info-box{
  margin-top: 18px;
}

@media (max-width: 980px){
  .fc-program-top{
    grid-template-columns: 1fr;
  }

  .fc-program-top-right{
    position: static;
    top: auto;
  }
}


/* === V590: Service pages intro/body merge fix === */
.fc-program-summary-card{
  margin-top: 16px;
  max-width: 760px;
}
.fc-program-summary-card__title{
  font-weight: 800;
  margin: 0 0 8px;
}
.fc-program-summary-card__list{
  margin: 0;
  padding-left: 18px;
}
.fc-program-summary-card__list li{
  margin: 6px 0;
}
@media (max-width: 640px){
  .fc-program-summary-card{
    margin-top: 14px;
  }
}


/* === V591: Service hero compaction and summary continuity === */
.fc-program-top--service{
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 14px;
  margin-bottom: 10px;
}
.fc-program-top--service .fc-program-top-left{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.fc-program-top--service .fc-program-lead{
  margin-top: 10px;
}
.fc-program-top--service .fc-program-summary-card{
  margin-top: 12px;
  margin-bottom: 0;
  width: 100%;
  max-width: 760px;
}
.fc-program-cta-panel--compact{
  gap: 8px;
  padding: 14px;
}
.fc-program-cta-panel--compact .fc-program-cta-title{
  font-size: 18px;
  line-height: 1.18;
}
.fc-program-cta-panel--compact .fc-program-cta-desc{
  font-size: 13px;
  line-height: 1.52;
}
.fc-program-cta-panel--compact .fc-program-cta-row{
  gap: 8px;
}
.fc-program-cta-panel--compact .fc-program-note{
  font-size: 11px;
  line-height: 1.45;
}
@media (max-width: 980px){
  .fc-program-top--service{
    grid-template-columns: 1fr;
  }
}


/* === V592: Service hero content continuity === */
.fc-program-top--service{
  margin-bottom: 6px;
}
.fc-program-top--service .fc-program-top-left{
  gap: 10px;
}
.fc-program-top--service .fc-program-summary-card--hero{
  margin-top: 0;
}
.fc-program-coverages-preview{
  width: 100%;
  max-width: 760px;
  margin-top: 0;
}
.fc-program-coverages-preview__title{
  margin: 0 0 10px;
}
.fc-program-coverages-preview__grid{
  margin-top: 0;
}
.fc-program-content > .fc-program-body{
  margin-top: 0;
}
.fc-program-content > .fc-program-body > :first-child{
  margin-top: 0;
}
@media (max-width: 980px){
  .fc-program-top--service{
    margin-bottom: 10px;
  }
  .fc-program-coverages-preview{
    max-width: none;
  }
}
