.elementor-8796 .elementor-element.elementor-element-12c5e74{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-8796 .elementor-element.elementor-element-83f5ca4{text-align:center;}.elementor-8796 .elementor-element.elementor-element-83f5ca4 .elementor-heading-title{font-family:"Cera Pro", Sans-serif;color:#222222;}.elementor-8796 .elementor-element.elementor-element-001834e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-8796 .elementor-element.elementor-element-d94f354{text-align:justify;font-family:"Cera Pro", Sans-serif;font-size:18px;}.elementor-8796 .elementor-element.elementor-element-a9f3057{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}@media(max-width:1024px){.elementor-8796 .elementor-element.elementor-element-83f5ca4 > .elementor-widget-container{margin:20px 0px 40px 0px;}}@media(max-width:767px){.elementor-8796 .elementor-element.elementor-element-12c5e74{--margin-top:30px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-8796 .elementor-element.elementor-element-83f5ca4 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-8796 .elementor-element.elementor-element-d94f354 > .elementor-widget-container{margin:20px 0px 0px 0px;padding:0px 10px 0px 10px;}}/* Start custom CSS for heading, class: .elementor-element-83f5ca4 */.rotate-left{
  display: inline-block; 
  background-color: #c72127;
  color: #fff;
  padding: 10px 14px;
  font-size: 3.8rem;
  margin:10px;
}

.rotate-left {
  transform: rotate(-4deg);
}

.title {
  position: relative;
  display: inline-block;
}

.title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px; /* απόσταση από το κείμενο */
  width: 100%;
  height: 2px;
  background: #000;
  transform: rotate(-2deg); /* μικρή κλίση */
  transform-origin: left;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-57efd86 *//* =========================
   BASE
========================= */
.menarche-tool {
  font-family: 'Caveat', cursive;
  max-width: 100%;
  margin: 0 auto;
/*  min-height: 850px;*/
  transform: translateZ(0);
  padding-bottom: 120px;
}
.book-stage {
  transition: height 0.4s ease;
}
.intro {
  text-align: center;
  margin-bottom: 40px;
}

/* =========================
   BOOK
========================= */
.book {
  perspective: 2000px;
  position: relative;
}

.book-stage {
  position: relative;
  background: #E5D7E2;
  overflow: visible;
}

/* =========================
   FLIP
========================= */
.flip-page {
  position: relative;
  width: 100%;
/*  min-height: 850px;*/
  perspective: 2000px;
  transform-style: preserve-3d;
}

.flip-face {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;

  transition: 
    transform 1s cubic-bezier(.77,0,.18,1),
    opacity 0.6s ease;

  transform-origin: left;
  transform: translateZ(0);
}

/* FRONT */
.flip-face.front {
  z-index: 2;
  transform: rotateY(0deg);
  opacity: 1;
}

/* BACK */
.flip-face.back {
  transform: rotateY(180deg) translateZ(1px);
  opacity: 0;
  z-index: 1;
}

/* FLIPPED */
.flip-page.flipped .front {
  transform: rotateY(-180deg);
  opacity: 0;
}

.flip-page.flipped .back {
  transform: rotateY(0deg);
  opacity: 1;
  z-index: 3;
}

/* =========================
   PAGE CONTENT
========================= */
.pageins-inner {
  background: #E5D7E2;
  padding: 40px;
  border-radius: 12px;
 min-height: 70vh;
  box-shadow:
    0 40px 80px rgba(0,0,0,0.2),
    inset 0 0 30px rgba(0,0,0,0.03);
    padding-bottom: 100px;
    display: flex;
  flex-direction: column;
  justify-content: flex-end;
  
}

/* =========================
   GRID
========================= */
.notes-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 30px;
  justify-items: center;
  margin: auto 0;
}

/* κάθε note */
.notes-grid .note {
  grid-column: span 2;
  max-width: 300px;
  width: 100%;
}
/* 4ο στοιχείο */
.notes-grid .note:nth-child(4) {
  grid-column: 2 / span 2;
}

/* 5ο στοιχείο */
.notes-grid .note:nth-child(5) {
  grid-column: 4 / span 2;
}
/* =========================
   NOTE
========================= */
.note {
  position: relative;
  background: #fffef8;
  border-radius: 6px;
  overflow: hidden;
  cursor: pointer;

 /* box-shadow: 0 10px 25px rgba(0,0,0,0.1);*/

  align-self: start;
  transition: all 0.3s ease;

  /* notebook lines */
  background-image:
    linear-gradient(to bottom, transparent 27px, rgba(0,0,0,0.08) 28px),
    linear-gradient(to right, rgba(255,0,0,0.15) 0px, rgba(255,0,0,0.15) 2px, transparent 2px);

  background-size:
    100% 28px,
    100% 100%;

  background-position:
    0 0,
    40px 0;

  padding-left: 55px;
  
    transition: transform 0.25s ease, box-shadow 0.25s ease;

  box-shadow: 
    0 10px 25px rgba(0,0,0,0.08),
    0 2px 6px rgba(0,0,0,0.05);
}

/* rotation randomness */
.note:nth-child(odd){ transform: rotate(-1deg); }
.note:nth-child(even){ transform: rotate(1deg); }

/* hover */
.note:hover {
  /*transform: scale(1.03) rotate(0deg);*/
  z-index: 2;
   transform: translateY(-6px) rotate(0deg);
  box-shadow: 
    0 20px 40px rgba(0,0,0,0.12),
    0 5px 10px rgba(0,0,0,0.08);
}

/* =========================
   ACTIVE NOTE (🔥 σημαντικό)
========================= */
.note.open {
 transform: scale(1.05) rotate(0deg) !important;
  z-index: 10;
  box-shadow: 0 25px 50px rgba(0,0,0,0.2);
}
.note:nth-child(2),
.note:nth-child(5) {
  margin-top: 10px;
}

.note:nth-child(3) {
  margin-top: 20px;
}

/* =========================
   BODY (CLEAN SYSTEM)
========================= */
.note-body {
  max-height: 0;
  overflow: hidden;

  opacity: 0;

  transition:
    max-height 0.4s ease,
    opacity 0.25s ease;

  padding: 0 20px;
}

.note.open .note-body {
  max-height: 1000px;
  opacity: 1;
  padding: 20px;
}

/* =========================
   FOCUS MODE
========================= */
.notes-grid.active .note:not(.open) {
  opacity: 0.7; /* πιο clean από 0.3 */
  transform: scale(0.95);
}

/* =========================
   WASHI TAPE
========================= */
.note::before {
  content:"";
  position:absolute;
  top:-10px;
  left:50%;
  transform:translateX(-50%) rotate(-2deg);

  width:70px;
  height:18px;

  background: rgba(173,216,230,0.6);

  border-radius:4px;

  box-shadow:
    0 2px 6px rgba(0,0,0,0.2),
    inset 0 0 6px rgba(255,255,255,0.4);
}

.note::after {
  content:"";
  position:absolute;
  inset:0;

  background: radial-gradient(rgba(0,0,0,0.03) 1px, transparent 1px);
  background-size: 3px 3px;

  pointer-events:none;
  opacity: 0.4;
}

/* =========================
   HEADER
========================= */
.note-header {
  padding: 20px;
}

.note-header h3 {
  font-family: 'Cera Pro';
  font-weight: 600;
  font-size: 18px;
  color: #222;
}

/* =========================
   NAV
========================= */
/* =========================
   NAV CONTAINER
========================= */
/* =========================
   FLOATING NAV
========================= */
.nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  
  width: 52px;
  height: 52px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(8px);

  box-shadow:
    0 10px 25px rgba(0,0,0,0.15),
    0 3px 8px rgba(0,0,0,0.08);

  cursor: pointer;
  z-index: 100;

  transition: all 0.25s ease;
}

/* LEFT */
.prev {
  left: 10px;
}

/* RIGHT */
.next {
  right: 10px;
}

/* ARROW ICON */
.nav::before {
  content: "";
  width: 12px;
  height: 12px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
}

/* directions */
.prev::before {
  transform: rotate(-135deg);
}

.next::before {
  transform: rotate(45deg);
}

/* hover */
.nav:hover {
  transform: translateY(-50%) scale(1.1);
  background: #fff;
}

/* click */
.nav:active {
  transform: translateY(-50%) scale(0.95);
}
/* disabled state */
.nav.disabled {
  opacity: 0.3;
  pointer-events: none;
  transform: translateY(-50%) scale(0.9);
}

/* optional visual tweak */
.nav.disabled::before {
  border-color: #999;
}


/* =========================
   TYPOGRAPHY
========================= */
.hfirst {
  text-align:center;
  background: rgb(125, 152, 206);
  color: #fff;
  padding: 5px;
  margin: 20px auto;
  width: fit-content;
  font-family:'Cera Pro';
  font-weight:400;
}

.hsec {
  text-align:center;
  background: #C72126;
  color: #fff;
  padding: 5px;
  margin: 20px auto;
  width: fit-content;
  font-family:'Cera Pro';
  font-weight:400;
}




/* =========================
   MODAL OVERLAY
========================= */
.note-modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.45);

  display: flex;
  align-items: center;
  justify-content: center;

  z-index: 9999;

  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.note-modal.active {
  opacity: 1;
  pointer-events: auto;
}

/* =========================
   MODAL CARD
========================= */
.note-modal-content {
  position: relative;

  background: #fffef8;
  width: 90%;
  max-width: 520px;
  max-height: 80vh;

  overflow-y: auto;

  border-radius: 12px;

  padding: 30px 25px;

  box-shadow: 0 30px 80px rgba(0,0,0,0.3);

  transform: scale(0.92);
  transition: transform 0.3s ease;

  /* notebook effect */
  background-image:
    linear-gradient(to bottom, transparent 27px, rgba(0,0,0,0.08) 28px),
    linear-gradient(to right, rgba(255,0,0,0.15) 0px, rgba(255,0,0,0.15) 2px, transparent 2px);

  background-size:
    100% 28px,
    100% 100%;

  background-position:
    0 0,
    40px 0;

  padding-left: 55px;
}

.note-modal.active .note-modal-content {
  transform: scale(1);
}

/* =========================
   FIX NOTE CONTENT (IMPORTANT)
========================= */
.note-modal-content .note-body {
  max-height: none !important;
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
  padding: 10px 20px 20px 0;
}

/* =========================
   HEADER
========================= */
.note-modal-content .note-header {
  padding: 0 20px 10px 0;
}

.note-modal-content .note-header h3 {
  font-size: 20px;
}

/* =========================
   CLOSE BUTTON
========================= */
.note-close {
  position: absolute;
  top: 10px;
  right: 15px;
  cursor: pointer;
  font-size: 22px;
  z-index: 2;
}

@media (max-width: 600px) {

  .note-modal-content {
    width: 100%;
    height: 100%;
    max-height: 100vh;

    border-radius: 0;

    padding: 25px 15px 20px 55px;
  }

  .note-close {
    top: 12px;
    right: 12px;
    font-size: 26px;
  }

  .note-modal-content .note-header h3 {
    font-size: 18px;
  }

}

/* =========================
   TABLET
========================= */
/* =========================
   TABLET + MOBILE → KILL GRID
========================= */
@media (max-width: 1024px) {

  .notes-grid {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
  }

  .notes-grid .note {
    flex: 0 0 45%;
    max-width: 100%;
    width: 100%;
  }

}

/* =========================
   MOBILE
========================= */
@media (max-width: 600px) {

  .notes-grid {
    display: flex !important;
    flex-direction: column;
    align-items: center;
  }

  .notes-grid .note {
    flex: none;
    width: 100%;
  }
 .nav {
    width: 44px;
    height: 44px;
  }

  .prev {
    left: 5px;
  }

  .next {
    right: 5px;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Cera Pro';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://digital.web2social.gr/wp-content/uploads/2026/02/CeraPro-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Cera Pro';
	font-style: normal;
	font-weight: bold;
	font-display: auto;
	src: url('https://digital.web2social.gr/wp-content/uploads/2026/02/CeraPro-Bold.ttf') format('truetype');
}
/* End Custom Fonts CSS */