﻿@media (min-width: 992px) {
    .c-layout-header .c-navbar .c-mega-menu.c-fonts-uppercase > .nav.navbar-nav > li > .c-link {
        font-size: 13px!important;
	}
}

.c-layout-footer-6 .c-postfooter .c-copyright {
    font-size: 14px!important;
}

.c-content-accordion-1.c-theme .panel > .panel-heading > .panel-title > a.collapsed, .c-content-accordion-1.c-theme .panel > .panel-heading > .panel-title > a  {
    background-color: #f7f7f7!important;
}

.c-content-accordion-1 .panel > .panel-heading > .panel-title > a, .c-content-accordion-1 .panel > .panel-collapse > .panel-body  {
	color:#3f444a!important;
}

.c-content-accordion-1 .panel > .panel-collapse > .panel-body {
	padding:15px!important;
}

.c-content-accordion-1.c-theme .panel > .panel-collapse > .panel-body {
     background-color: #ffffff!important;
}

.sk-cube-grid .sk-cube {
    background-color: #000000!important;
 }
 
 .c-content-pricing-1 > .c-tile-container > .c-tile {
    width: 31.5%!important;
	    margin: 40px 10px!important;
    padding: 25px 0!important;
 }
 
 @media (max-width: 991px) {
  .c-content-pricing-1 > .c-tile-container > .c-tile {
    width: 80%!important;
	margin-left:10%!important;
  }
 .c-layout-header .c-navbar .c-logo img {
    max-height: 38px!important;
}
 .c-layout-header .c-brand {
    margin: 15px 15px 12px 15px !important;
 }
 .c-theme-nav li.c-active > a:not(.btn) {
  color: #fff !important;
}
}
.c-layout-header .c-topbar .c-top-menu > .c-links > li {
  padding: 12px 5px 8px 5px!important;
}
.node-video-wrapper {
  width: 100%;
  max-width: 100%;
}

.node-video-wrapper iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
}

.node-meta-label {
	text-transform:uppercase;
	font-weight:400;
}

.node-meta-value {
	font-size:16px!important;
}

.node-meta-item {
	margin:10px 0px;
}

.node-title {
	text-transform:uppercase;
	font-weight:400;
}

.node-main, .node-sidebar {
	margin-top:20px;
}

.node-meta-value .icon-clock {
	font-size:12px;
}

/* Κάθε φίλτρο (details) να είναι block στοιχείο */
.views-exposed-form details {
  display: block;

}

/* Βάλε τα checkboxes κάθετα */
.views-exposed-form .bef-checkboxes.form--inline {
  display: flex;
  flex-direction: column;

}

:root{
  --radio-size: 14px;   /* διάμετρος κύκλου */
  --dot-size: 7px;      /* διάμετρος βούλας */
  --dot-color:#000;
  --ring-color:#000;
  --gap-x:8px;
}

/* Κρύψε το input, κράτα προσβασιμότητα */
.c-checkbox > input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.c-checkbox > label{
  display:inline-flex;
  align-items:center;
  gap:var(--gap-x);
  line-height:1;
  cursor:pointer;
  font-size:14px!important;
  padding-left:25px!important;
}

/* Απενεργοποίηση legacy spans */
.c-checkbox label > .inc,
.c-checkbox label > .check{ display:none !important; }

/* Ο κύκλος */
.c-checkbox label > .box{
  display:grid;
  place-items:center;
  width:var(--radio-size);
  height:var(--radio-size);
  border:1.5px solid var(--ring-color);
  border-radius:50%;
  box-sizing:border-box;
  flex:0 0 var(--radio-size);
  vertical-align:middle;
}

/* Η βούλα */
.c-checkbox label > .box::after{
  content:"";
  width:var(--dot-size);
  height:var(--dot-size);
  background:var(--dot-color);
  border-radius:50%;
  opacity:0;
  transform:scale(0);
  transition:transform .2s ease, opacity .2s ease;
}

/* Checked state */
.c-checkbox > input:checked + label .box::after{
  opacity:1 !important;
  transform:scale(1) !important;
}

/* Προαιρετικό focus */
.c-checkbox > input:focus-visible + label .box{
  outline:2px solid rgba(0,0,0,.35);
  outline-offset:2px;
}

/* Προηγούμενος κανόνας – διατηρείται για συμβατότητα με theme */
.c-checkbox input[type=checkbox]:checked ~ label > .box{
  opacity:1!important;
  transform:none!important;
}

.form-group {
    margin-bottom: 0px!important;
}



.views-exposed-form .form-item label {
font-weight: 300!important;
}

[role="button"] {
    font-weight: 300;
	font-size:15px;
}

#views-exposed-form-classes-page-1 .btn {
    padding: 6px 15px 4px 15px!important;
    font-size: 12px!important;
}



.views-exposed-form details > summary {
  position: relative;
  display: flex;
  align-items: center;
  padding-right: 1.5rem;      /* χώρος για το βελάκι */
  cursor: pointer;
}

/* Κρύβουμε το default marker του browser */
.views-exposed-form details > summary::-webkit-details-marker {
  display: none;
}

/* Βελάκι δεξιά (κλειστό φίλτρο) */
.views-exposed-form details > summary::after {
  content: "";
  display: inline-block;
  font-family: FontAwesome;
  font-size: smaller;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.3rem;
}

.c-layout-sidebar-menu .c-sidebar-menu li.c-dropdown.c-open > a .c-arrow::before {
  content: "";
  display: inline-block;
  font-family: FontAwesome;
  font-size: 1.3rem;
}

.c-layout-sidebar-menu .c-sidebar-menu li.c-dropdown > a .c-arrow {
    width: 10px!important;
}

/* Όταν το φίλτρο είναι ανοιχτό, δείξε βελάκι προς τα πάνω */
.views-exposed-form details[open] > summary::after {
    content: "";            /* πάνω βελάκι */
}

/* Default: κρυφό, θα το εμφανίζει το JS */
.filters-reset-link {
  display: none;
  align-items: center;
  gap: 6px;
  color: #000;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  margin-bottom: 0.75rem;
  transition: color 0.2s ease;
  border-top: 1px solid #000;
  width: 100%;
  margin-top: 10px;
  padding-top: 10px;
}

.filters-reset-link i {
  font-size: 14px;
  color: #000;
  transition: color 0.2s ease, transform 0.2s ease;
}

.filters-reset-link:hover {
  color: #000;
}

.filters-reset-link:hover i {
  color: #000;
  transform: rotate(-15deg);
}

/* ============================
 * ΔΥΣΚΟΛΙΑ – icons ανά επίπεδο
 * ============================ */

/* Βάση για όλα τα labels στο filter Δυσκολία */
[data-drupal-selector="edit-field-dyskolia"] .c-checkbox > label {
  position: relative;
  padding-right: 26px; /* χώρος για το icon δεξιά */
}

/* Το εικονίδιο μετά το κείμενο */
[data-drupal-selector="edit-field-dyskolia"] .c-checkbox > label::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center right;
}

/* Επίπεδο 1 */
.form-item-field-dyskolia-59 .c-checkbox > label::after {
  background-image: url("../icons/level-1.svg");
}

/* Επίπεδο 2 */
.form-item-field-dyskolia-60 .c-checkbox > label::after {
  background-image: url("../icons/level-2.svg");
}

/* Επίπεδο 3 */
.form-item-field-dyskolia-61 .c-checkbox > label::after {
  background-image: url("../icons/level-3.svg");
}


/* ============================
 * ΕΞΟΠΛΙΣΜΟΣ – icons ανά τύπο
 * ============================ */

/* Βάση για όλα τα labels στο filter Εξοπλισμός */
[data-drupal-selector="edit-field-exoplismos"] .c-checkbox > label {
  position: relative;
  padding-right: 26px;
}

/* Icon μετά το κείμενο */
[data-drupal-selector="edit-field-exoplismos"] .c-checkbox > label::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center right;
}

/* Yoga Blocks */
.form-item-field-exoplismos-66 .c-checkbox > label::after {
  background-image: url("../icons/block.svg");
}

/* Στρώμα Yoga */
.form-item-field-exoplismos-67 .c-checkbox > label::after {
  background-image: url("../icons/mat.svg");
}

/* Ιμάντας Yoga */
.form-item-field-exoplismos-68 .c-checkbox > label::after {
  background-image: url("../icons/strap.svg");
}

/* Μαξιλάρι στήριξης (Bolster) */
.form-item-field-exoplismos-69 .c-checkbox > label::after {
  background-image: url("../icons/bolster.svg");
}


/* ----- DESKTOP (>= 769px) ----- */
@media (min-width: 769px) {
  .filters-toggle {
    display: none; /* Κρύβουμε το κουμπί "Φίλτρα" στο desktop */
  }

  .filters-block {
    position: static;
    transform: none;
    width: auto;
    max-width: 320px; /* sidebar πλάτος, αν θες */
    box-shadow: none;
  }

  /* Το "Προβολή αποτελεσμάτων" δεν χρειάζεται στο desktop */
  .filters-apply-button {
    display: none;
  }

  body.filters-open::before {
    content: none;
  }
}

/* ----- MOBILE (<= 768px) ----- */
@media (max-width: 768px) {
  .filters-toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0.5rem 1rem;
    border-radius: 999px;
    border: 1px solid #ddd;
    background: #fff;
    font-size: 1.4rem;
    font-weight: 600;
    text-transform: uppercase;
	margin-left: 15px;
  }

  .filters-toggle i {
    font-size: 1.4rem;
  }

  /* Slide-in panel από ΑΡΙΣΤΕΡΑ */
  .filters-block {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: auto;
    width: 80%;
    max-width: 360px;
    background: #fff;
    padding: 1.5rem 1.25rem;
    overflow-y: auto;
    z-index: 1001;

    transform: translateX(-100%);
    transition: transform 0.3s ease;
    box-shadow: 4px 0 12px rgba(0, 0, 0, 0.18);
  }

  .filters-block.is-open {
    transform: translateX(0);
  }

  /* Σκούρο overlay πίσω από το panel */
  body.filters-open::before {
    content: "";
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1000;
  }

  /* Κουμπί "Προβολή αποτελεσμάτων" μέσα στο slide */
  .filters-apply-button {
    display: block;
    width: 100%;
    margin-top: 2rem;
    padding: 0.7rem 1rem;
    border-radius: 6px;
    border: solid 1px #5c6873;
    background: #ffffff;
    color: #5c6873;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 14px;
  }

  .filters-apply-button:hover {
    background: #fff;
  }
}


/* Ο περιέκτης του thumbnail πρέπει να είναι relative */
.courses .class-card__thumb-wrapper, .learn .class-card__thumb-wrapper, .classes .class-card__thumb-wrapper {
  position: relative;
  overflow: hidden;
}

/* Overlay πάνω από το video – θα φανεί μόνο στο hover */
.courses .class-card__hover-overlay, .learn .class-card__hover-overlay, .classes .class-card__hover-overlay {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.25s ease;
  text-align: center;
  padding: 10px;
}

.courses .class-card__hover-message, .learn .class-card__hover-message, .classes .class-card__hover-message {
  background: rgba(255, 255, 255, 0.8);
  color: #000;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 13px;
  line-height: 1.4;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.courses .class-card__hover-message i, .learn .class-card__hover-message i, .classes .class-card__hover-message i {
  font-size: 14px;
}

/* Ενεργοποίηση overlay στο hover της κάρτας όταν είναι locked */
.courses .class-card--locked:hover .class-card__hover-overlay, .learn .class-card--locked:hover .class-card__hover-overlay, .classes .class-card--locked:hover .class-card__hover-overlay {
  opacity: 1;
}

/* Μικρή κλειδαριά κάτω δεξιά, πάντα ορατή σε locked cards */
.courses .class-card__lock-badge, .learn .class-card__lock-badge, .classes .class-card__lock-badge {
  position: absolute;
  bottom: 8px;
  right: 8px;
  background: #ffffff;
  color: #333;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

.courses .class-card__lock-badge i, .learn .class-card__lock-badge i, .classes .class-card__lock-badge i {
  font-size: 12px;
}

.courses .class-card__body h3, .learn .class-card__body h3, .classes .class-card__body h3 {
	font-size:14px;
	font-weight:400;
}

.courses > h3, .learn > h3 {
    font-size: 22px;
}

.class-card__title {
  text-align: center !important;
}

.c-content-title-1 h3 {
    text-transform: capitalize!important;
}

.courses h3, .learn h3 {
	margin: 20px 0!important;
}

.filters-title i {
	padding-right:8px;
}

.form-control.c-square {
     margin-bottom: 10px;
}

body {
	font-size:14px;
    color: #000000!important;
}



@media (min-width: 992px) {
    .c-layout-header.c-layout-header-4 .c-navbar .c-mega-menu > .nav.navbar-nav > li > .c-link {
        color: #000000;
    }
}

@media (max-width: 991px) {
    .c-layout-header.c-layout-header-default-mobile .c-brand > .c-hor-nav-toggler {
	background: none!important;       
    }
	.c-layout-header.c-layout-header-default-mobile .c-brand > .c-hor-nav-toggler > .c-line {
        background: #000000!important;
    }
	.c-layout-header.c-layout-header-default-mobile .c-brand > .c-topbar-toggler > i {
		color: #000000!important;
	}
	.c-layout-header .c-navbar .c-mega-menu.c-mega-menu-dark-mobile {
        background: #ffffff!important;
    }
	.c-layout-header .c-navbar .c-mega-menu.c-mega-menu-dark-mobile > .nav.navbar-nav > li > .c-link, .c-layout-header .c-navbar .c-mega-menu.c-mega-menu-dark-mobile > .nav.navbar-nav > li > .active-trail .c-link {
        color: #000000!important;
    }
    .c-layout-header .c-navbar .c-mega-menu.c-mega-menu-dark-mobile > .nav.navbar-nav > li > .c-link {
		border-bottom: 1px solid rgb(247, 247, 247) !important;
    }
}

.c-content-pricing-1 > .c-tile-container > .c-tile.c-bordered {
    border-radius: 8px;
}

.btn.c-btn-border-2x.c-btn-uppercase.btn-md {
    border-radius: 8px;
}

.c-theme-btn.btn {
    border-radius: 8px;
    color: #000 !important;
    background: #fff;
}

.c-theme-btn.btn:hover,.c-theme-btn.btn:active{
    background: #fff!important;
}

.btn:active {
	box-shadow: none!important;
}

.programmatahome .group-title {
	font-size:14px;
	margin:10px;
	text-align:center;
}

.tkystudio .btn.c-theme-btn, .programmatahome .btn.c-theme-btn {
  display: block;
  margin: 30px auto 0; /* πάνω-κάτω 30px, κέντρο οριζόντια */
  text-align: center;
  width: fit-content; /* να μην πιάνει όλο το πλάτος */
}

.c-content-pricing-1 > .c-tile-container > .c-tile > .c-label {
   padding: 14px 10px 12px 10px!important;
   width:100%!important;
}


.filters-block h3 {
	border-bottom: solid 1px #000000;
	padding-bottom: 8px;
	margin: 10px 0px 15px 0px;
}

.form-group .c-font-uppercase {
    text-transform: capitalize!important;
}

.user-register-form label, #edit-field-apodohi-politikis-aporrito-wrapper .option {
	display:none!important;
}

label[for="edit-field-apodohi-politikis-aporrito-value"] {
    display: inline-block !important;
}

#edit-field-apodohi-politikis-aporrito-value--description,#edit-field-apodohi-politikis-aporrito-value--description a, #edit-name--description, #edit-mail--description, #edit-pass--description, #edit-current-pass--description, .password-strength__title, .password-suggestions, .js-password-confirm-message, .user-pass p {
	font-size:11px;
	color:#777;
	font-style:italic;
}

.user-register-form .c-theme-btn.btn {
	margin-top:20px;
}

.btn {
  font-size: 14px!important;
}

.form-control {
  color: #000000!important;
}

.password-strength__indicator {
  background-color: #000000!important;
}

.c-shop-login-register-1 label, .user-pass label {
	display:none;
}

.fptext {
	display:block;
}

.alert, .alert-success {
    background-color: #f7f7f7!important;
    border-color: #ff0000!important;
    color: #ff0000!important;
}


.c-btn-border-2x.c-btn-dark.btn-no-focus:hover, .c-btn-border-2x.c-btn-dark:hover, .c-btn-border-2x.c-btn-dark.btn-no-focus:active, .c-btn-border-2x.c-btn-dark:active, .c-btn-border-2x.c-btn-dark.active, .open > .c-btn-border-2x.c-btn-dark.dropdown-toggle {
    color: #ffffff!important;
    background: #000!important;
    border-color: #000!important;
}

.yogaq .c-content-title-1 h3 {
    text-transform: none!important;
}


#subscribef .fieldset-wrapper .form-group.js-form-type-email
 {
    vertical-align: middle;
}

#subscribef .input-group .fieldset-wrapper {
    margin: 0 auto;
}

#subscribef .form-item-apodehomai-toys-oroys-hrisis-kai-tin-politiki-aporritoy {
    display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin-top: 15px;
}

.c-layout-sidebar-menu .c-sidebar-menu > li:hover > a, .c-layout-sidebar-menu .c-sidebar-menu > li.c-open > a {
    background: none!important;
}

.c-layout-sidebar-menu .c-sidebar-menu > li > a {
    display: block;
    color: #000;
    padding: 0px!important;
    font-weight: 500;
	border-bottom: solid 1px #000000;
    padding-bottom: 8px;
    margin: 10px 0px 15px 0px;
	font-size: 18px;
}

.c-layout-sidebar-menu .c-sidebar-menu {
    border: none!important;
}

.c-layout-sidebar-menu .c-sidebar-menu li.c-dropdown > a .c-arrow {
    color: #000000!important;
}
.c-layout-sidebar-menu .c-sidebar-menu li .c-dropdown-menu li > a {
	font-size:15px!important;
    padding: 5px 5px 5px 0px!important;
}

@media (min-width: 768px) and (max-width: 1280px) {
.c-layout-sidebar-menu .c-sidebar-menu > li > a {
	font-size: 16px!important
}

}

@media (min-width: 991px) {
.c-layout-sidebar-menu .c-sidebar-menu {
	max-width: 320px!important;
}
}

.course-group-body {
margin-bottom: 20px;
}