.elementor-329 .elementor-element.elementor-element-c342599{--display:flex;--min-height:49vh;--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;--justify-content:center;--overlay-opacity:0.23;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-329 .elementor-element.elementor-element-c342599::before, .elementor-329 .elementor-element.elementor-element-c342599 > .elementor-background-video-container::before, .elementor-329 .elementor-element.elementor-element-c342599 > .e-con-inner > .elementor-background-video-container::before, .elementor-329 .elementor-element.elementor-element-c342599 > .elementor-background-slideshow::before, .elementor-329 .elementor-element.elementor-element-c342599 > .e-con-inner > .elementor-background-slideshow::before, .elementor-329 .elementor-element.elementor-element-c342599 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-329 .elementor-element.elementor-element-c342599:not(.elementor-motion-effects-element-type-background), .elementor-329 .elementor-element.elementor-element-c342599 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-329 .elementor-element.elementor-element-c342599 > .elementor-shape-bottom .elementor-shape-fill, .elementor-329 .elementor-element.elementor-element-c342599 > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:var( --e-global-color-a19ae62 );}.elementor-329 .elementor-element.elementor-element-c342599 > .elementor-shape-bottom svg, .elementor-329 .elementor-element.elementor-element-c342599 > .e-con-inner > .elementor-shape-bottom svg{width:calc(152% + 1.3px);}.elementor-329 .elementor-element.elementor-element-c342599 > .elementor-shape-bottom, .elementor-329 .elementor-element.elementor-element-c342599 > .e-con-inner > .elementor-shape-bottom{z-index:2;pointer-events:none;}.elementor-widget-theme-archive-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-329 .elementor-element.elementor-element-8b03c53{text-align:center;}.elementor-329 .elementor-element.elementor-element-8b03c53 .elementor-heading-title{font-family:"Noto Sans Buhid", Sans-serif;font-size:48px;font-weight:500;color:var( --e-global-color-a19ae62 );}.elementor-329 .elementor-element.elementor-element-a56a8d6{--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;--overflow:auto;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-329 .elementor-element.elementor-element-7d6e20d{text-align:start;}.elementor-329 .elementor-element.elementor-element-7d6e20d .elementor-heading-title{font-family:"Noto Sans Buhid", Sans-serif;font-size:43px;font-weight:500;color:#F5452B;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-329 .elementor-element.elementor-element-ba843ee{--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;--overlay-opacity:0.5;--padding-top:100px;--padding-bottom:100px;--padding-left:10px;--padding-right:10px;}.elementor-329 .elementor-element.elementor-element-ba843ee::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .elementor-background-video-container::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .e-con-inner > .elementor-background-video-container::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .elementor-background-slideshow::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .e-con-inner > .elementor-background-slideshow::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://www.singularment.com/wp-content/uploads/2025/09/image-5.jpg");--background-overlay:'';background-position:bottom center;background-repeat:no-repeat;background-size:contain;}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:var( --e-global-color-primary );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:var( --e-global-color-primary );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-primary );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-primary );}.elementor-widget-wc-archive-products{--products-title-color:var( --e-global-color-primary );}.elementor-widget-wc-archive-products.products-heading-show .related-products > h2, .elementor-widget-wc-archive-products.products-heading-show .upsells > h2, .elementor-widget-wc-archive-products.products-heading-show .cross-sells > h2{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price del{color:var( --e-global-color-primary );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price del .amount{color:var( --e-global-color-primary );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .price del {font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-wc-archive-products.elementor-wc-products ul.products li.product .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-wc-archive-products.elementor-wc-products .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-wc-archive-products .elementor-products-nothing-found{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product{text-align:left;--button-align-display:flex;--button-align-direction:column;--button-align-justify:space-between;padding:25px 25px 25px 25px;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products .attachment-woocommerce_thumbnail{border-radius:15px 15px 15px 15px;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:"Poppins", Sans-serif;font-size:19px;font-weight:500;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product .price{color:var( --e-global-color-accent );font-family:"Noto Sans Buhid", Sans-serif;font-size:19px;font-weight:600;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-accent );}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-accent );}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product .price del {font-family:"Poppins", Sans-serif;font-weight:600;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product .button{color:var( --e-global-color-a19ae62 );background-color:var( --e-global-color-accent );font-family:"Poppins", Sans-serif;font-weight:500;text-transform:uppercase;border-radius:15px 15px 15px 15px;margin-top:8px;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product .button:hover{background-color:var( --e-global-color-primary );}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products .added_to_cart{color:var( --e-global-color-primary );font-family:"Carlito", Sans-serif;font-weight:500;margin-inline-start:21px;}.elementor-329 .elementor-element.elementor-element-9da546c nav.woocommerce-pagination{font-family:"Carlito", Sans-serif;}.elementor-329 .elementor-element.elementor-element-9da546c nav.woocommerce-pagination ul li a{color:var( --e-global-color-primary );}.elementor-329 .elementor-element.elementor-element-9da546c nav.woocommerce-pagination ul li a:hover{color:var( --e-global-color-accent );}.elementor-329 .elementor-element.elementor-element-9da546c nav.woocommerce-pagination ul li span.current{color:var( --e-global-color-accent );background-color:var( --e-global-color-a19ae62 );}.elementor-329 .elementor-element.elementor-element-9da546c .elementor-products-nothing-found{font-family:"Carlito", Sans-serif;font-weight:400;}@media(max-width:1024px){.elementor-329 .elementor-element.elementor-element-c342599{--min-height:44vh;}.elementor-329 .elementor-element.elementor-element-8b03c53 .elementor-heading-title{font-size:45px;}.elementor-329 .elementor-element.elementor-element-a56a8d6{--padding-top:100px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-329 .elementor-element.elementor-element-7d6e20d .elementor-heading-title{font-size:35px;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products ul.products li.product{padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-329 .elementor-element.elementor-element-c342599{--min-height:70vh;}.elementor-329 .elementor-element.elementor-element-8b03c53 .elementor-heading-title{font-size:42px;}.elementor-329 .elementor-element.elementor-element-a56a8d6{--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;--flex-wrap:wrap;}.elementor-329 .elementor-element.elementor-element-e0d99ed{width:var( --container-widget-width, 100vw );max-width:100vw;--container-widget-width:100vw;--container-widget-flex-grow:0;}.elementor-329 .elementor-element.elementor-element-9da546c.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(min-width:768px){.elementor-329 .elementor-element.elementor-element-a56a8d6{--content-width:1450px;}.elementor-329 .elementor-element.elementor-element-ba843ee{--content-width:1450px;}}@media(min-width:1025px){.elementor-329 .elementor-element.elementor-element-ba843ee::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .elementor-background-video-container::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .e-con-inner > .elementor-background-video-container::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .elementor-background-slideshow::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .e-con-inner > .elementor-background-slideshow::before, .elementor-329 .elementor-element.elementor-element-ba843ee > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-attachment:scroll;}}/* Start custom CSS for heading, class: .elementor-element-7d6e20d */.schedule-wrap{
  max-width: 100%;
  overflow-x: auto;              /* activa scroll horitzontal */
  -webkit-overflow-scrolling: touch; /* scroll suau en mòbil */
}

.schedule-grid{
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

/* tablets */
@media (max-width: 1024px){
  .schedule-grid{
    min-width: 900px;   /* obliguem scroll horitzontal */
  }
}

/* mòbils */
@media (max-width: 768px){
  .schedule-grid{
    min-width: 1100px;  /* encara més ample → scroll horitzontal */
  }
}

/* important: la columna de franges horàries es comporta com qualsevol altra */
.schedule-grid thead th:first-child,
.schedule-grid tbody th{
  position: static;   /* no queda fixa */
  left: auto;
  background: #fff;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-e0d99ed */table.schedule {
    border-collapse: collapse;
    width: 100%;
    text-align: center;
    table-layout: fixed;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  }

  .schedule th,
  .schedule td {
    border: 1px solid #e0e0e0;
    padding: 10px;
    min-width: 120px;
    vertical-align: top;
  }

  .schedule thead th {
    background: #f8f8f8;
    font-weight: 700;
  }

  /* Columna de “Franja” (horas) */
  .schedule td.time,
  .schedule th.time {
    width: 110px;
    font-weight: 600;
    background: #fcfcfc;
  }

  /* Contenedor de eventos (permite varios en la misma celda) */
  .event {
    display: block;
    margin: 4px 0;
    padding: 6px 8px;
    border-radius: 8px;
    font-weight: 600;
    line-height: 1.25;
  }
  .event small {
    display: block;
    font-weight: 500;
    opacity: .9;
  }

  /* Colores por actividad */
  .event--singular {             /* Singular Training (azul) */
    background: #e7f0ff;
    color: #0b57d0;
    border: 1px solid #c8dcff;
  }
  .event--ioga {                 /* Ioga (verde) */
    background: #e9f7ef;
    color: #1e7d57;
    border: 1px solid #cfeedd;
  }
  .event--part {                 /* Part i moviment (naranja) */
    background: #fff1e6;
    color: #b35300;
    border: 1px solid #ffd9bf;
  }
  .event--dansa {                /* Dansa lliure (morado) */
    background: #f1e9ff;
    color: #5b3bb3;
    border: 1px solid #e0d2ff;
  }

  /* Altura base por franja horaria */
  .schedule tbody td {
    height: 54px;
  }
  
  
  /* ----- Scroll y responsive ----- */
.schedule-wrap {
  max-width: 100%;
  overflow-x: auto;                 /* permite scroll horizontal */
  -webkit-overflow-scrolling: touch;
}

.schedule-grid {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

/* tablets */
@media (max-width: 1024px){
  .schedule-grid{
    min-width: 900px;
  }
}

/* móviles */
@media (max-width: 768px){
  .schedule-grid{
    min-width: 1100px;
  }
}

/* Forzar que la columna de franja NO sea sticky (por si tu tema lo aplica) */
.schedule-grid thead th:first-child,
.schedule-grid tbody th {
  position: static !important;   /* anula sticky */
  left: auto !important;
  background: #fff;
  z-index: auto !important;
  box-shadow: none !important;
}/* End custom CSS */