.elementor-kit-8{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================
   FUENTES
========================= */

@font-face{
  font-family:"GasoekOne";
  src:url("https://casildamatran.es/wp-content/uploads/2025/12/GasoekOne-Regular.ttf") format("truetype");
  font-display:swap;
}

@font-face{
  font-family:"Garet";
  src:url("https://casildamatran.es/wp-content/uploads/2025/12/Garet-Book.woff") format("woff");
  font-display:swap;
}

/* =========================
   VARIABLES
========================= */

:root{
  --cm-ink:#0E3042;
  --cm-soft:#7AAFB2;
  --cm-bg:#FAF7F0;

  --cm-frame-w:min(92vw,1040px);
  --cm-radius:20px;
  --cm-shadow:0 18px 50px rgba(14,48,66,.12);

  --cm-ratio-desktop:16/9;
  --cm-ratio-tablet:4/3;
  --cm-ratio-mobile:1/1;

  --cm-overlay-pad:18px;
}

/* =====================================================
   SECCIÓN BASE
===================================================== */

.cm-about{
  background:var(--cm-bg);
  padding:clamp(32px,4vw,60px) 0;
}

.cm-about__wrap{
  width:var(--cm-frame-w);
  margin:0 auto;
}

/* =====================================================
   INTRO
===================================================== */

.cm-about-intro__title{
  font-family:"GasoekOne", system-ui, sans-serif;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:clamp(36px,5vw,64px);
  line-height:.95;
  margin:0 0 16px 0;
  color:var(--cm-ink);
}

/* Portátil pequeño */
@media (min-width:900px) and (max-width:1280px){
  .cm-about-intro__title{
    font-size: clamp(28px, 3.5vw, 46px);
  }
}

.cm-about-intro__text{
  font-family:"Garet", system-ui, sans-serif;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:clamp(14px,1.6vw,16px);
  line-height:1.7;
  max-width:72ch;
  margin:0;
  color:rgba(14,48,66,.85);
}

/* =====================================================
   CARDS
===================================================== */

.cm-card{
  position:relative;
  border-radius:var(--cm-radius);
  overflow:hidden;
  box-shadow:var(--cm-shadow);

  /* ❌ SIN margen entre cuadros */
  margin:0;
}

.cm-card + .cm-card{
  margin-top:0;
}

.cm-card__media{
  aspect-ratio:var(--cm-ratio-desktop);
  position:relative;
  background:var(--cm-bg);
}

.cm-card__media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:50% 50%;
}

/* Overlay */

.cm-card__overlay{
  position:absolute;
  left:var(--cm-overlay-pad);
  right:var(--cm-overlay-pad);
  bottom:var(--cm-overlay-pad);

  padding:var(--cm-overlay-pad);

  background:rgba(250,247,240,.92);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);

  border:1px solid rgba(14,48,66,.14);
  border-radius:16px;
}

.cm-card__title{
  font-family:"GasoekOne", system-ui, sans-serif;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:clamp(18px,2vw,22px);
  margin:0 0 8px 0;
  color:var(--cm-ink);
}

.cm-card__text{
  font-family:"Garet", system-ui, sans-serif;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:14px;
  line-height:1.6;
  margin:0 0 12px 0;
  color:rgba(14,48,66,.85);
}

.cm-tags{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.cm-tag{
  font:700 11px "Garet", system-ui, sans-serif;
  text-transform:uppercase;
  letter-spacing:.18em;
  padding:6px 14px;
  border-radius:999px;
  border:1px solid rgba(14,48,66,.18);
  background:rgba(122,175,178,.15);
  color:var(--cm-ink);
}

/* =====================================================
   TABLET
===================================================== */

@media (max-width:980px){
  :root{ --cm-overlay-pad:14px; }
  .cm-card__media{ aspect-ratio:var(--cm-ratio-tablet); }
}

/* =====================================================
   MÓVIL
===================================================== */

@media (max-width:640px){

  .cm-card__media{
    aspect-ratio:4/3;
  }

  .cm-card__media img{
    object-fit:cover;
    padding:0;
    background:transparent;
  }

  /* Overlay debajo de imagen */
  .cm-card__overlay{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;

    margin:12px;
    padding:14px;
  }

  /* 🔹 Reducir TODO excepto CASILDA MATRÁN */

  .cm-about-intro__text{
    font-size:12px;
    letter-spacing:.045em;
    line-height:1.6;
  }

  .cm-card__title{
    font-size:16px;
    letter-spacing:.08em;
  }

  .cm-card__text{
    font-size:11px;
    letter-spacing:.045em;
    line-height:1.5;
  }

  .cm-tag{
    font-size:9px;
    letter-spacing:.12em;
    padding:5px 10px;
  }
}

@media (max-width:380px){
  .cm-card__media{ aspect-ratio:1/1; }
}

/* =====================================================
   AJUSTES DE ENCUADRE
===================================================== */

.cm-card--lenguaje .cm-card__media img{ object-position:50% 45%; }
.cm-card--cv       .cm-card__media img{ object-position:50% 50%; }
.cm-card--caracter .cm-card__media img{ object-position:50% 45%; }

/* =====================================================
   REVEAL
===================================================== */

.cm-reveal{
  opacity:1;
  transform:none;
}

.cm-io-ready .cm-reveal{
  opacity:0;
  transition:opacity .8s cubic-bezier(.22,.61,.36,1),
             transform .8s cubic-bezier(.22,.61,.36,1);
  will-change:opacity, transform;
}

.cm-io-ready .cm-left{ transform:translateX(-60px); }
.cm-io-ready .cm-right{ transform:translateX(60px); }

.cm-io-ready .cm-reveal.is-visible{
  opacity:1;
  transform:translateX(0);
}

@media (prefers-reduced-motion: reduce){
  .cm-io-ready .cm-reveal{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
}

/* =========================
   NU CARRUSEL
========================= */

.nu-carrusel{
  background:#FAF7F0;
  padding: clamp(40px,6vw,80px) 0;
}

.nu-carrusel__wrap{
  width:min(92vw,1100px);
  margin:0 auto;
  position:relative;
}

.nu-slide{
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:20px;
  cursor:none;
}

.nu-slide__img{
  width:100%;
  aspect-ratio:16/9;
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
}

.nu-slide__caption{
  position:absolute;
  left:18px;
  bottom:14px;
  font-family:"GasoekOne", system-ui, sans-serif;
  font-size: clamp(14px,1.4vw,22px);
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#fff;
  text-shadow:0 6px 20px rgba(0,0,0,.3);
}

/* dots */
.nu-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:12px;
}

.nu-dot{
  width:6px;
  height:6px;
  border-radius:50%;
  border:none;
  background:#cfd8dc;
  cursor:pointer;
}

.nu-dot.active{
  background:#0E3042;
}

/* cursor CTA */
.nu-cursor-cta{
  position:absolute;
  top:0;
  left:0;
  transform:translate(-9999px,-9999px);
  background:#FAF7F0;
  color:#0E3042;
  font-family:"Garet", system-ui, sans-serif;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  padding:10px 16px;
  border-radius:999px;
  pointer-events:none;
  box-shadow:0 18px 50px rgba(14,48,66,.12);
}

/* =========================
   PORTÁTIL / PC PEQUEÑO
   Ajuste REAL a VH
========================= */

@media (min-width: 900px) and (max-height: 850px){

  .nu-carrusel{
    height:100vh;
    padding:4vh 4vw;
    display:flex;
    align-items:center;
    justify-content:center;
  }

  .nu-carrusel__wrap{
    width:100%;
    max-width:1000px;
  }

  .nu-slide__img{
    height:70vh;
    max-height:70vh;
    width:100%;
    aspect-ratio:auto; /* manda la altura */
  }

  .nu-slide{
    border-radius:16px;
  }

  .nu-slide__caption{
    font-size:16px;
  }
}

/* =========================
   MÓVIL
========================= */

@media (max-width:900px){
  .nu-slide{
    cursor:auto;
  }

  .nu-cursor-cta{
    display:none;
  }

  .nu-slide__img{
    aspect-ratio:4/3;
  }
}

@media (max-width:520px){
  .nu-slide__img{
    aspect-ratio:1/1;
  }
}
/* =========================
   NU CATEGORÍAS
========================= */

.nu-categorias{
  background:#FAF7F0;
  padding: clamp(70px, 9vw, 140px) 0;
  display:flex;
  align-items:center;
  justify-content:center;
}

.nu-categorias__wrap{
  width:min(92vw,1200px);
  margin:0 auto;
  display:flex;
  justify-content:center;
  align-items:center;
  overflow:visible;
}

.nu-cat-word{
  width:100%;
  text-align:center;
  position:relative;
  min-height: clamp(120px, 16vw, 260px);
  overflow:visible;
}

/* capas */
.nu-cat-layer{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
  width:100%;

  display:flex;
  align-items:center;
  justify-content:center;

  font-family:"GasoekOne", system-ui, sans-serif;
  font-size: clamp(46px, 8.8vw, 130px);
  letter-spacing:.06em;
  text-transform:uppercase;
  line-height:1.05;

  white-space:normal;
  overflow-wrap:anywhere;

  /* Imagen dentro del texto */
  background-image: var(--img);
  background-repeat:no-repeat;
  background-position: var(--pos);
  background-size: cover; /* 🔥 quitamos el 260% */

  color:transparent;
  -webkit-text-fill-color:transparent;
  -webkit-background-clip:text;
  background-clip:text;

  -webkit-text-stroke:0;
  text-shadow:none;

  transition: opacity .55s ease;
  opacity:0;
  pointer-events:none;
}

.nu-cat-layer.is-in{ opacity:1; }
.nu-cat-layer.is-out{ opacity:0; }

/* Tablet */
@media (max-width:900px){
  .nu-categorias{ padding:70px 0; }

  .nu-cat-word{
    min-height: clamp(110px, 22vw, 230px);
  }

  .nu-cat-layer{
    font-size: clamp(34px, 10vw, 86px);
    letter-spacing:.05em;
    line-height:1.08;
  }
}

/* Móvil */
@media (max-width:520px){
  .nu-categorias{ padding:56px 0; }

  .nu-cat-word{
    min-height: clamp(92px, 28vw, 190px);
  }

  .nu-cat-layer{
    font-size: clamp(26px, 11.5vw, 64px);
    letter-spacing:.04em;
    line-height:1.12;
  }
}/* End custom CSS */