/* FlexiCare v110 — HOTFIX + CTA tone (slightly darker than v108/v109, still light/premium)
   Purpose:
   1) Fix PHP parse issue introduced by a bad escaped quote in header.php (500 error)
   2) Make primary CTAs a touch deeper (less washed-out) without going "dark petrol"
*/

.btn.primary{
  background: linear-gradient(180deg, rgba(104, 214, 224, 1), rgba(38, 142, 160, 1)) !important;
  border: 1px solid rgba(7,53,64,.10) !important;
  color: rgba(255,255,255,.96) !important;
}

@media (hover:hover) and (pointer:fine){
  .btn.primary:hover{
    background: linear-gradient(180deg, rgba(92, 210, 222, 1), rgba(30, 134, 152, 1)) !important;
  }
}

.btn.primary:active{
  background: linear-gradient(180deg, rgba(86, 206, 218, 1), rgba(28, 128, 146, 1)) !important;
}

/* v112 — Programs split: center + full-width title buttons */
.fc-programs-box-h{ display:block !important; }
.fc-programs-box-title-btn{
  display:flex !important;
  width:100% !important;
  justify-content:center !important;
  text-align:center !important;
  padding: 12px 16px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
}

/* v116 — Nav dropdown (Ασφάλειες): keep only Ιδιώτες & Επιχειρήσεις
   Removes the CTA buttons inside the mega dropdown. Mobile CTAs remain at the bottom of the menu.
*/
.nav .dropdown-mega .dd-actions{ display:none !important; }

/* tighten spacing slightly so the dropdown doesn't look "cut" after removing actions */
.nav .dropdown-mega{ padding-bottom: 10px !important; }

/* ===================================================================
   v118 — Mobile menu polish (drawer)
   - Smooth open/close
   - Fixed position (stays open while scrolling)
   - Visible backdrop overlay
   - Smooth submenu expand/collapse
   - Remove CTAs inside the drawer (handled also in nav.php)
   =================================================================== */

@media (max-width: 980px){
  /* Backdrop overlay (already in DOM: .fc-nav-overlay[data-nav-overlay]) */
  .fc-nav-overlay{
    position: fixed;
    inset: 0;
    background: rgba(6,24,32,.24);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, visibility 0s linear .18s;
    z-index: 998;
  }
  body.nav-open .fc-nav-overlay{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
  }

  /* Freeze page scroll when drawer is open */
  body.nav-open{
    overflow: hidden;
  }

  /* Keep the drawer fixed and animated */
  .site-header nav.nav .menu{
    display: flex !important;
    position: fixed !important;
    top: 72px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
    flex-direction: column !important;

    background: rgba(255,255,255,.96) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(47,143,158,.18) !important;
    border-radius: 20px !important;
    box-shadow: 0 22px 60px rgba(6,24,32,.20) !important;

    padding: 10px !important;
    max-height: calc(100vh - 90px);
    overflow: auto;
    touch-action: pan-y;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px) scale(.985);
    transition: opacity .18s ease, transform .18s ease, visibility 0s linear .18s;
    z-index: 999;
  }
  .site-header nav.nav .menu.open{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
    transition-delay: 0s;
  }

  /* Top row sticky (title + close) */
  .site-header .menu .menu-mobile-top{
    position: sticky;
    top: 0;
    z-index: 2;
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    margin: -10px -10px 8px;
    padding: 10px 10px 12px;
    border-bottom: 1px solid rgba(11,46,51,.10);
    border-radius: 20px 20px 14px 14px;
  }

  /* Menu items look like premium buttons */
  .site-header .menu > li{ width: 100%; }
  .site-header .menu > li > a.nav-btn{
    width: 100%;
    border-radius: 16px !important;
    padding: 12px 12px !important;
    border: 1px solid rgba(47,143,158,.14) !important;
    background: rgba(255,255,255,.55) !important;
  }
  .site-header .menu > li > a.nav-btn:hover{
    background: rgba(47,143,158,.08) !important;
  }
  .site-header .menu > li > a.nav-btn.active{
    background: linear-gradient(180deg, rgba(47,143,158,.16), rgba(47,143,158,.08)) !important;
    border-color: rgba(47,143,158,.24) !important;
  }

  /* Submenu: smooth expand/collapse (no flash) */
  .site-header .menu > li > .dropdown,
  .site-header .menu > li > .flyout{
    display: block !important;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-top: 0 !important;
    transform: translateY(-4px);
    transition: max-height .22s ease, opacity .18s ease, transform .18s ease, margin-top .18s ease;
    border-radius: 14px !important;
  }
  .site-header .menu > li > .dropdown.open,
  .site-header .menu > li > .flyout.open{
    max-height: 900px;
    opacity: 1;
    transform: translateY(0);
    margin-top: 8px !important;
  }

  /* Hide CTA row inside the drawer (just in case) */
  .site-header .menu .menu-mobile-cta{ display:none !important; }

  /* When drawer open, hide floating contact UI so it doesn't overlap */
  body.nav-open .fc-bottombar,
  body.nav-open .fc-float{
    opacity: 0 !important;
    pointer-events: none !important;
  }
}


/* ===================================================================
   v119 — Fix mobile drawer interaction + fullscreen + no blur
   Symptoms addressed:
   - Drawer looks "blurry/washed" on some mobile browsers (Android)
   - Taps close the menu instantly (overlay stacking / hover flash)
   Targets:
   - Fullscreen drawer with solid background
   - Disable overlay for fullscreen drawer
   - Make submenu taps reliable (JS adds .is-open)
   =================================================================== */

@media (max-width: 980px){
  /* Never show CTA buttons inside the mobile drawer */
  .menu .menu-mobile-cta{ display:none !important; }

  /* Fullscreen drawer: crisp, no glass/blur */
  .site-header nav.nav .menu{
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;

    max-width: none !important;
    width: auto !important;
    margin: 0 !important;

    border-radius: 0 !important;
    border: 0 !important;
    box-shadow: none !important;

    background: #fff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;

    padding: 12px 12px 18px !important;
    max-height: none !important;
    overflow-y: auto !important;
    touch-action: pan-y;
  }

  .site-header nav.nav .menu.open{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .site-header .menu .menu-mobile-top{
    margin: -12px -12px 10px !important;
    padding: 14px 12px 14px !important;
    background: #fff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-radius: 0 !important;
    border-bottom: 1px solid rgba(11,46,51,.10) !important;
  }

  /* Better contrast on items */
  .site-header .menu > li > a.nav-btn{
    background: rgba(248, 252, 253, 1) !important;
    border-color: rgba(47,143,158,.14) !important;
  }

  /* Disable overlay for fullscreen drawer (prevents accidental close / weird layering) */
  .fc-nav-overlay{ display:none !important; }
}

/* Touch devices (non-mobile width): keep dropdown visible when JS adds .is-open */
@media (min-width: 981px){
  .nav li.has-children.is-open > .dropdown,
  .nav li.has-children.is-open > .flyout{
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }
}


/* ===================================================================
   FlexiCare v124 — Nav premium active states + desktop click-dropdown polish
   - Keeps dropdown closed on hover (prevents flash close)
   - Shows dropdown on .is-open
   - Premium active state for top-level + dropdown items
   =================================================================== */

:root{
  --fc-nav-pill: rgba(38, 142, 160, .10);
  --fc-nav-pill-border: rgba(38, 142, 160, .18);
  --fc-nav-hover: rgba(38, 142, 160, .08);
  --fc-nav-text: #0b2730;
}

/* Top-level buttons micro-hover + active */
.site-header .menu > li > a.nav-btn{
  transition: background .16s ease, box-shadow .16s ease, transform .16s ease;
  border-radius: 14px;
}
.site-header .menu > li > a.nav-btn:hover{
  background: var(--fc-nav-hover) !important;
}
.site-header .menu > li > a.nav-btn.active{
  background: var(--fc-nav-pill) !important;
  box-shadow: inset 0 0 0 1px var(--fc-nav-pill-border);
}

/* Mobile-only contact link: show only in drawer */
.menu-mobile-only{display:none;}
@media (max-width: 980px){
  .menu-mobile-only{display:block;}
  .menu-mobile-only a{
    margin-top: 6px;
  }
}

/* Desktop dropdown: override old hover-based nav */
@media (min-width: 981px){
  .site-header nav.nav .dropdown{
    display:block !important;              /* neutralize style.css display:none */
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform: translateY(8px);
    transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s;
    background: rgba(255,255,255,.98) !important;
    border: 1px solid rgba(47,143,158,.18) !important;
    border-radius: 18px !important;
    box-shadow: 0 22px 60px rgba(6,24,32,.14) !important;
    padding: 8px !important;
    overflow: hidden;
    min-width: 280px;
  }
  /* Hard-disable hover open from style.css */
  .menu > li:hover > .dropdown{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform: translateY(8px) !important;
  }
  .menu > li.is-open > .dropdown{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform: translateY(0) !important;
    transition-delay: 0s;
  }

  .site-header nav.nav .dropdown a{
    color: var(--fc-nav-text) !important;
    font-weight: 700 !important;
    border-radius: 12px;
    padding: 12px 12px !important;
    transition: background .14s ease, transform .14s ease;
  }
  .site-header nav.nav .dropdown a:hover{
    background: rgba(38,142,160,.08) !important;
  }
  .site-header nav.nav .dropdown a.active{
    background: rgba(38,142,160,.12) !important;
    box-shadow: inset 0 0 0 1px rgba(38,142,160,.18);
  }

  /* Hide mobile-only back buttons on desktop */
  .dd-mobile-back{display:none !important;}
}

/* Mobile submenu back button */
@media (max-width: 980px){
  .dd-mobile-back{
    position: sticky;
    top: 0;
    z-index: 3;
    background: rgba(255,255,255,.96);
    border-bottom: 1px solid rgba(47,143,158,.14);
  }
  .dd-back-btn{
    width: 100%;
    text-align: left;
    border: 0;
    background: transparent;
    padding: 12px 10px;
    font-weight: 800;
    color: rgba(11,39,48,.92);
    cursor: pointer;
  }
  .dd-back-btn:hover{
    background: rgba(38,142,160,.08);
    border-radius: 12px;
  }
  /* Active dropdown links in mobile */
  .site-header nav.nav .dropdown a.active{
    background: rgba(38,142,160,.10);
    box-shadow: inset 0 0 0 1px rgba(38,142,160,.16);
    border-radius: 12px;
  }
}

/* ===================================================================
   v125 — Nav premium spacing + clearer hierarchy (safe, CSS-only)
   - App-like mobile drawer: better spacing, chevrons, safe-area padding
   - Desktop micro-hover + active pill
   =================================================================== */

@media (max-width: 980px){
  /* Respect safe areas (iOS notch / bottom bar) */
  .site-header nav.nav .menu{
    padding-bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  }
  .site-header .menu .menu-mobile-top{
    padding-top: calc(14px + env(safe-area-inset-top)) !important;
  }

  .site-header .menu .menu-mobile-title{
    font-size: 16px;
    font-weight: 900;
    letter-spacing: -0.01em;
  }

  .site-header .menu .menu-close{
    width: 40px;
    height: 40px;
    border-radius: 14px;
    border: 1px solid rgba(47,143,158,.18);
    background: rgba(248,252,253,1);
  }
  .site-header .menu .menu-close:hover{
    background: rgba(38,142,160,.08);
  }

  /* Rhythm */
  .site-header nav.nav .menu > li:not(.menu-mobile-top){
    margin-top: 8px !important;
  }

  /* Hit areas + typography */
  .site-header .menu > li > a.nav-btn{
    min-height: 52px;
    padding: 14px 12px !important;
  }
  .site-header .menu .nav-label{
    font-size: 15px;
    font-weight: 800;
    letter-spacing: -0.01em;
  }
  .site-header .menu .nav-ico{
    width: 22px;
    height: 22px;
    opacity: .92;
  }

  /* Chevron for submenus */
  .site-header .menu > li.has-children > a.nav-btn{
    position: relative;
    padding-right: 42px !important;
  }
  .site-header .menu > li.has-children > a.nav-btn:after{
    content: '›';
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%) rotate(0deg);
    font-size: 22px;
    line-height: 1;
    color: rgba(11,39,48,.55);
    transition: transform .16s ease, color .16s ease;
  }
  .site-header .menu > li.has-children.is-open > a.nav-btn:after{
    transform: translateY(-50%) rotate(90deg);
    color: rgba(38,142,160,.70);
  }

  /* Inset submenu panel */
  .site-header .menu > li > .dropdown.open,
  .site-header .menu > li > .flyout.open{
    background: rgba(248,252,253,1) !important;
    border: 1px solid rgba(47,143,158,.14) !important;
    padding: 8px !important;
    border-radius: 16px !important;
  }

  /* Mobile-only contact link: visually separated */
  .site-header nav.nav .menu > li.menu-mobile-only{
    margin-top: 14px !important;
    padding-top: 10px;
    border-top: 1px solid rgba(11,46,51,.10);
  }
}

@media (min-width: 981px){
  /* Top-level nav micro-hover (dropdown remains click-to-open via JS) */
  .site-header nav.nav .menu > li > a.nav-btn{
    border-radius: 999px !important;
    padding: 10px 12px !important;
    transition: background .14s ease, box-shadow .14s ease, transform .14s ease;
  }
  .site-header nav.nav .menu > li > a.nav-btn:hover{
    background: rgba(38,142,160,.06) !important;
  }
  .site-header nav.nav .menu > li > a.nav-btn.active{
    background: rgba(38,142,160,.10) !important;
    box-shadow: inset 0 0 0 1px rgba(38,142,160,.18);
  }

  /* Dropdown item hover: subtle lift */
  .site-header nav.nav .dropdown a:hover{
    transform: translateY(-1px);
  }
}

/* ===================================================================
   v126 — Desktop mega-panel polish + typography harmonization
   Goals:
   - More premium dropdown panel (grid layout, spacing, subtle header line)
   - Harmonize nav typography with the rest of the UI
   - Keep click-to-open behavior (NO hover-open)
   =================================================================== */

:root{
  --fc-nav-fs: 14px;
  --fc-nav-fs-dd: 14px;
  --fc-nav-radius: 18px;
  --fc-nav-panel: rgba(255,255,255,.98);
  --fc-nav-panel-2: rgba(248,252,253,1);
  --fc-nav-border: rgba(47,143,158,.18);
}

@media (min-width: 981px){
  /* Top-level label sizing (desktop) */
  .site-header nav.nav .menu .nav-label{
    font-size: var(--fc-nav-fs) !important;
    font-weight: 850 !important;
    letter-spacing: -0.01em;
  }
  .site-header nav.nav .menu .nav-ico{
    width: 18px !important;
    height: 18px !important;
    opacity: .92;
  }

  /* Premium dropdown panel: grid + wider but bounded */
  .site-header nav.nav .dropdown{
    z-index: 1200;
    top: calc(100% + 12px) !important;
    background: linear-gradient(180deg, var(--fc-nav-panel), var(--fc-nav-panel-2)) !important;
    border: 1px solid var(--fc-nav-border) !important;
    border-radius: calc(var(--fc-nav-radius) + 2px) !important;
    padding: 10px !important;
    min-width: 340px !important;
    width: min(640px, calc(100vw - 28px)) !important;
    box-shadow: 0 26px 70px rgba(6,24,32,.14) !important;
    overflow: hidden;

    /* layout */
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 6px;
  }

  /* Right-align the last dropdown (Χρήσιμα) so it doesn't fall off-screen */
  .site-header nav.nav .menu > li.has-children:has(> a[href="/xrisima"]) > .dropdown{
    left: auto !important;
    right: 0 !important;
  }

  /* Remove old "border-top" separators (they look wrong in grid) */
  .site-header nav.nav .dropdown li + li a{ border-top: 0 !important; }

  /* Subtle top highlight line (premium feel) */
  .site-header nav.nav .dropdown::before{
    content: "";
    position: absolute;
    left: 10px;
    right: 10px;
    top: 10px;
    height: 1px;
    background: linear-gradient(90deg, rgba(38,142,160,.00), rgba(38,142,160,.22), rgba(38,142,160,.00));
    pointer-events: none;
  }

  /* Dropdown items (exclude .btn inside dd-actions) */
  .site-header nav.nav .dropdown a:not(.btn){
    font-size: var(--fc-nav-fs-dd) !important;
    line-height: 1.15;
    padding: 12px 12px !important;
    border-radius: 14px;
    background: rgba(255,255,255,.70);
    border: 1px solid rgba(47,143,158,.10);
  }
  .site-header nav.nav .dropdown a:not(.btn):hover{
    background: rgba(38,142,160,.08) !important;
    border-color: rgba(47,143,158,.16);
    transform: translateY(-1px);
  }
  .site-header nav.nav .dropdown a:not(.btn).active{
    background: rgba(38,142,160,.12) !important;
    border-color: rgba(38,142,160,.18);
    box-shadow: inset 0 0 0 1px rgba(38,142,160,.12);
  }

  /* dd-actions should span full width in grid */
  .site-header nav.nav .dropdown .dd-actions{
    grid-column: 1 / -1;
    margin-top: 2px !important;
  }
  .site-header nav.nav .dropdown .dd-actions a.btn{
    width: 100%;
    justify-content: center;
    padding: 12px 12px !important;
    border-radius: 14px !important;
    background: rgba(38,142,160,.10) !important;
    border: 1px solid rgba(38,142,160,.18) !important;
    color: var(--fc-nav-text) !important;
  }

  /* Mega dropdown sections (Ασφάλειες) */
  .site-header nav.nav .dropdown-mega .dd-title{
    display: inline-flex;
    font-weight: 900 !important;
    letter-spacing: -0.01em;
  }
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .site-header nav.nav .menu > li > a.nav-btn,
  .site-header nav.nav .dropdown,
  .site-header nav.nav .dropdown a{
    transition: none !important;
  }
}

/* ===================================================================
   FlexiCare v127 — Dropdown fine-tune (DESKTOP ONLY)
   - Adjust widths per dropdown group for a cleaner premium feel
   - Add a subtle label header using aria-label (no markup changes)
   NOTE: Scoped to desktop so mobile drawer is unaffected.
   =================================================================== */

@media (min-width: 981px){
  /* Fine-tune panel widths per section */
  /* Ασφάλειες */
  .site-header nav.nav .menu > li.has-children:has(> a[href^="/asfaleies"]) > .dropdown{
    width: min(560px, calc(100vw - 28px)) !important;
    min-width: 360px !important;
  }

  /* Άλλα Προϊόντα */
  .site-header nav.nav .menu > li.has-children:has(> a[href^="/alla-proionta"]) > .dropdown{
    width: min(520px, calc(100vw - 28px)) !important;
    min-width: 340px !important;
  }

  /* Χρήσιμα */
  .site-header nav.nav .menu > li.has-children:has(> a[href^="/xrisima"]) > .dropdown{
    width: min(660px, calc(100vw - 28px)) !important;
    min-width: 380px !important;
  }

  /* Soft header label inside dropdown (from aria-label) */
  .site-header nav.nav .dropdown[aria-label]::after{
    content: attr(aria-label);
    position: absolute;
    left: 14px;
    top: 12px;
    font-size: 11px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(11,39,48,.55);
    font-weight: 900;
    pointer-events: none;
  }

  /* Give room for the label */
  .site-header nav.nav .dropdown[aria-label]{
    padding-top: 34px !important;
  }

  /* Slightly tighter grid gap now that we have a label */
  .site-header nav.nav .dropdown{
    gap: 6px !important;
  }
}


/* ===================================================================
   FlexiCare v128 — Mobile drawer HARDEN (bugfix)
   Symptom: On some builds the drawer shows only the top bar ("Μενού")
            and the page content appears underneath.
   Fix: Force the open-state menu to be a real fullscreen fixed panel
        and force menu items to render.
   =================================================================== */

@media (max-width: 980px){
  body.nav-open .site-header{ z-index: 10040 !important; }

  body.nav-open .site-header nav.nav .menu{
    position: fixed !important;
    inset: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
    z-index: 10050 !important;

    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;

    /* Ensure it doesn't collapse */
    min-height: 100vh !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
  }

  /* Force menu items to show */
  body.nav-open .site-header nav.nav .menu > li{ display: block !important; }
  body.nav-open .site-header nav.nav .menu > li.menu-mobile-top{ display: flex !important; }
  body.nav-open .site-header nav.nav .menu > li > a{ display: flex !important; }

  /* Keep close button visible and aligned */
  body.nav-open .site-header nav.nav .menu .menu-mobile-top{
    position: sticky !important;
    top: 0 !important;
    z-index: 3 !important;
    background: #fff !important;
  }
}

/* ===================================================================
   FlexiCare v129 — Mobile drawer premium UX (CSS-only, low risk)
   Goals:
   - Add chevrons for expandable items (has-children)
   - Improve tap targets + spacing (app-like)
   - Style submenu as inset panel + back row
   - Keep v128 fullscreen harden intact
   =================================================================== */

@media (max-width: 980px){
  /* Safe area bottom padding (iOS home bar) */
  body.nav-open .site-header nav.nav .menu{
    padding-bottom: calc(18px + env(safe-area-inset-bottom)) !important;
  }

  /* Consistent row layout */
  body.nav-open .site-header nav.nav .menu > li > a.nav-btn{
    position: relative;
    min-height: 48px;
    align-items: center;
    gap: 10px;
  }

  /* Icon sizing consistency */
  body.nav-open .site-header nav.nav .menu .nav-ico{
    width: 20px !important;
    height: 20px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: .92;
  }
  body.nav-open .site-header nav.nav .menu .nav-ico svg{
    width: 20px !important;
    height: 20px !important;
    display: block;
  }

  /* Chevrons for items with children */
  body.nav-open .site-header nav.nav .menu > li.has-children > a.nav-btn{
    padding-right: 46px !important;
  }
  body.nav-open .site-header nav.nav .menu > li.has-children > a.nav-btn::after{
    content: "";
    position: absolute;
    right: 16px;
    top: 50%;
    width: 9px;
    height: 9px;
    margin-top: -6px;
    border-right: 2px solid rgba(11,46,51,.55);
    border-bottom: 2px solid rgba(11,46,51,.55);
    transform: rotate(45deg);
    opacity: .70;
    transition: transform .18s ease, opacity .18s ease;
    pointer-events: none;
  }
  body.nav-open .site-header nav.nav .menu > li.has-children.is-open > a.nav-btn::after{
    transform: rotate(-135deg);
    opacity: .92;
  }

  /* Submenu inset panel */
  body.nav-open .site-header nav.nav .menu > li > .dropdown,
  body.nav-open .site-header nav.nav .menu > li > .flyout{
    background: rgba(248,252,253,1) !important;
    border: 1px solid rgba(47,143,158,.12) !important;
    padding: 8px !important;
    border-radius: 16px !important;
  }

  /* Submenu items */
  body.nav-open .site-header nav.nav .menu .dropdown a:not(.btn),
  body.nav-open .site-header nav.nav .menu .flyout a:not(.btn){
    display: flex;
    align-items: center;
    width: 100%;
    padding: 12px 12px !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.98) !important;
    border: 1px solid rgba(47,143,158,.10) !important;
    transition: background .14s ease, transform .14s ease, border-color .14s ease;
  }
  body.nav-open .site-header nav.nav .menu .dropdown a:not(.btn):active,
  body.nav-open .site-header nav.nav .menu .flyout a:not(.btn):active{
    transform: translateY(1px);
  }

  /* Back row inside submenu */
  body.nav-open .site-header nav.nav .menu .dd-mobile-back{
    margin-bottom: 6px;
  }
  body.nav-open .site-header nav.nav .menu .dd-back-btn{
    width: 100%;
    text-align: left;
    padding: 12px 12px;
    border-radius: 14px;
    border: 1px solid rgba(47,143,158,.14);
    background: rgba(38,142,160,.06);
    color: rgba(11,46,51,.92);
    font-weight: 850;
    letter-spacing: -0.01em;
  }

  /* Close button styling consistency */
  body.nav-open .site-header nav.nav .menu .menu-close{
    border-radius: 999px;
    border: 1px solid rgba(47,143,158,.18);
    background: rgba(248,252,253,1);
  }
}

@media (prefers-reduced-motion: reduce){
  @media (max-width: 980px){
    body.nav-open .site-header nav.nav .menu > li.has-children > a.nav-btn::after{
      transition: none !important;
    }
    body.nav-open .site-header nav.nav .menu .dropdown a,
    body.nav-open .site-header nav.nav .menu .flyout a{
      transition: none !important;
    }
  }
}


/* ===================================================================
   v150 — Συχνές Ερωτήσεις block (hub pages)
   =================================================================== */

.fc-faq{
  margin-top: 24px;
  padding: 14px;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,0.70), rgba(255,255,255,0.46));
  border: 1px solid rgba(9, 60, 74, 0.08);
  box-shadow: 0 18px 44px rgba(9,60,74,0.06);
}

.fc-faq-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 12px;
  margin-bottom: 10px;
}

@media (max-width: 760px){
  .fc-faq-head{ align-items:flex-start; flex-direction:column; }
}

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

.fc-faq-list{
  display:grid;
  gap: 8px;
}

.fc-faq-item{
  border-radius: 18px;
  border: 1px solid rgba(9,60,74,0.10);
  background: rgba(255,255,255,0.90);
  box-shadow: 0 12px 28px rgba(9,60,74,0.05);
  overflow:hidden;
}

.fc-faq-item > summary{
  cursor: pointer;
  list-style: none;
  padding: 12px 14px;
  font-weight: 800;
  color: rgba(7,53,64,0.92);
  display:flex;
  align-items:flex-start;
  gap: 10px;
}

.fc-faq-item > summary::-webkit-details-marker{ display:none; }

.fc-faq-item > summary::after{
  content:"";
  margin-left:auto;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  background: currentColor;
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 10l5 5 5-5" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>') center / contain no-repeat;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 10l5 5 5-5" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>') center / contain no-repeat;
  opacity: .55;
  transform: rotate(0deg);
  transition: transform .16s ease;
}

details[open].fc-faq-item > summary::after{ transform: rotate(180deg); }

.fc-faq-answer{
  padding: 0 14px 12px;
  color: rgba(9,60,74,0.74);
  font-size: 14px;
  line-height: 1.5;
}

.fc-faq-answer p{ margin: 0; }

.fc-faq-answer ul{
  margin: 8px 0 0;
  padding-left: 18px;
}

.fc-faq-answer li{ margin: 4px 0; }
