/* Talleres: módulos independientes con la escala visual de la landing de Ronde. */
.talleres-page{width:min(100%,1920px);margin:0 auto;container-type:inline-size;overflow:hidden;background:var(--paper);color:var(--orange)}
.talleres-module{position:relative;width:100%}

/* 01 · Presentación */
.talleres-hero{--hero-u:min(1cqw,1.43svh);height:100svh;min-height:0;max-height:none;overflow:hidden;background:var(--orange);color:#fff}
.talleres-hero .site-header{z-index:5;color:#fff}
.talleres-hero .header-cta{background:#fff;border-color:#fff;color:var(--orange)}
.talleres-hero .header-cta:hover{background:transparent;color:#fff}
.talleres-composition{position:absolute;z-index:1;left:50%;top:53.4%;width:calc(82.5 * var(--hero-u));height:calc(45.2 * var(--hero-u));transform:translate(-50%,-50%)}
/* Las inclinaciones de 2.16° y -2.6° ya están incorporadas en estos dos PNG. */
.talleres-paper{position:absolute;z-index:0;left:-.67%;top:-1.55%;width:65.7%;height:100%;object-fit:fill;transform:none}
.talleres-intro-copy{position:absolute;z-index:2;left:5.75%;top:27.4%;width:49.7%;color:var(--orange);text-align:center;transform:rotate(-2.6deg)}
.talleres-intro-copy h1{margin:0 0 calc(3.2 * var(--hero-u));font-size:calc(5.3 * var(--hero-u));line-height:.95;transform:rotate(-4.96deg)}
.talleres-intro-copy p{width:96%;margin:0 auto;font-size:calc(1.8 * var(--hero-u));line-height:1.35;letter-spacing:.015em}
.talleres-intro-photo{position:absolute;z-index:3;left:56.1%;top:12.6%;right:auto;width:44.24%;height:75.9%;object-fit:cover;transform:none}

/* 02 · Fichas de talleres */
.talleres-list{padding:3cqw 0 4cqw;background:var(--paper)}
.talleres-workshop{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8cqw;width:80cqw;height:42cqw;margin:0 auto}
.workshop-photo{position:relative;z-index:1;display:block;width:35cqw;height:35cqw;object-fit:cover;border-radius:.8cqw}
.talleres-workshop:nth-child(even) .workshop-photo{grid-column:2;grid-row:1}
.workshop-copy{position:relative;z-index:2;width:100%;max-width:35cqw}
.talleres-workshop:nth-child(even) .workshop-copy{grid-column:1;grid-row:1}
.workshop-heading{display:flex;align-items:baseline;justify-content:flex-start;gap:1.2cqw;text-align:left}
.workshop-heading h2 a{color:inherit;text-decoration:none}
.workshop-heading h2 a:hover{text-decoration:underline;text-underline-offset:.12em}
.workshop-heading h2,.workshop-price{margin:0;font-family:PTMonoBold,PTMono,monospace;font-size:1.65cqw;font-weight:700;line-height:1.25;text-transform:uppercase}
.workshop-price{white-space:nowrap}
.workshop-meta{margin:.35cqw 0 2.4cqw;font-size:1.08cqw;line-height:1.4}
.workshop-copy>p:not(.workshop-meta){max-width:31cqw;margin:0 0 1.45cqw;text-align:left;font-size:1.25cqw;line-height:1.5}
.workshop-copy .workshop-includes{font-family:var(--hand);font-size:1.45cqw!important;line-height:1.2!important}
.workshop-copy .text-cta{margin-top:1cqw;padding:.55cqw 1.15cqw;border-radius:.38cqw;font-size:.88cqw;line-height:1.3}
.workshop-doodle{position:absolute;z-index:3;width:8.2cqw;height:auto;object-fit:contain;pointer-events:none}
.workshop-doodle{transition:rotate .35s ease-out}
.doodle-left{left:-3.5cqw;top:50%;transform:translateY(-50%) rotate(-8deg)}
.doodle-right{right:-3.4cqw;top:50%;transform:translateY(-50%) rotate(8deg)}
body.is-scrolling-down .workshop-doodle.doodle-left{rotate:15deg}
body.is-scrolling-down .workshop-doodle.doodle-right{rotate:-15deg}
@media(min-width:851px){
  .talleres-workshop--01 .workshop-doodle{left:-4.6cqw;top:72.6%;right:auto;width:10.3cqw;transform:rotate(-8deg)}
  .talleres-workshop--02 .workshop-doodle{left:auto;top:-.8cqw;right:-5.8cqw;width:9cqw;transform:rotate(8deg)}
  .talleres-workshop--03 .workshop-doodle{left:-8.3cqw;top:0;width:10.3cqw;transform:rotate(-3.5deg)}
  .talleres-workshop--04 .workshop-doodle{left:auto;top:53.3%;right:-5.8cqw;width:9cqw;transform:rotate(8deg)}
}

/* 03 · Inspiración */
.inspiration{height:100svh;min-height:0;overflow:hidden;background:#258b4c;color:#fff;text-align:center}
.inspiration h2{position:absolute;top:9cqw;left:50%;width:max-content;max-width:90%;margin:0;font-size:4.25cqw;font-weight:400;line-height:1.1;white-space:nowrap;transform:translateX(-50%) rotate(-2.98deg) scaleX(1.3)}
.inspiration>p{position:absolute;top:15.7cqw;left:0;width:100%;margin:0;font-family:PTMonoBold,PTMono,monospace;font-size:1.1cqw;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.inspiration>p a{color:inherit;text-decoration:none}
.inspiration>p a:hover{text-decoration:underline;text-underline-offset:.2em}
.inspiration-gallery{position:absolute;left:0;right:0;bottom:10.4cqw;height:22.8cqw;overflow:hidden}
.inspiration-track{display:flex;width:max-content;height:100%;animation:inspiration-scroll 28s linear infinite}
.inspiration-set{display:flex;flex:0 0 auto;gap:1.5cqw;padding-right:1.5cqw;height:100%}
.inspiration-gallery img{display:block;flex:0 0 22.8cqw;width:22.8cqw;height:22.8cqw;object-fit:cover;border-radius:1.5cqw}
@keyframes inspiration-scroll{to{transform:translateX(-50%)}}

/* 04 · Footer compartido con la página de inicio */
.talleres-footer-module{width:100%}

@media(max-width:850px){
  .talleres-hero{height:100svh;min-height:0;max-height:none}
  .talleres-composition{left:0;top:0;width:100%;height:100%;transform:none}
  .talleres-hero .site-header{padding:24px 22px}
  .talleres-hero .header-cta{background:#fff;border-color:#fff;color:var(--orange)}
  .talleres-paper{left:4%;top:145px;width:91%;height:auto;max-height:380px}
  .talleres-intro-copy{left:11%;top:190px;width:48%;transform:rotate(-3deg)}
  .talleres-intro-copy h1{margin-bottom:18px;font-size:clamp(34px,9vw,60px);white-space:normal;transform:rotate(-4.56deg)}
  .talleres-intro-copy p{width:100%;font-size:clamp(12px,2.8vw,17px);line-height:1.4}
  .talleres-intro-photo{left:auto;top:360px;right:7%;width:48%;height:44vw;max-height:340px}
  .talleres-list{padding:56px 22px 24px}
  .talleres-workshop{display:flex;flex-direction:column;align-items:flex-start;gap:0;width:100%;height:auto;margin:0 auto 76px}
  .talleres-workshop:nth-child(even){align-items:flex-end}
  .workshop-photo{width:min(78%,430px);height:auto;aspect-ratio:1/1;border-radius:8px}
  .workshop-copy{width:min(78%,430px);max-width:none;padding-top:19px}
  .talleres-workshop:nth-child(even) .workshop-copy{text-align:left}
  .workshop-heading{gap:12px}
  .workshop-heading h2,.workshop-price{font-size:clamp(15px,4vw,21px)}
  .workshop-meta{margin:5px 0 18px;font-size:12px}
  .workshop-copy>p:not(.workshop-meta){max-width:100%;margin:0 0 13px;font-size:14px;line-height:1.5}
  .workshop-copy .workshop-includes{font-size:17px!important}
  .workshop-copy .text-cta{margin-top:8px;padding:8px 14px;border-radius:5px;font-size:11px}
  .workshop-doodle{width:20%;max-width:100px}
  .doodle-left{left:-2%;top:32%}
  .doodle-right{right:-2%;top:32%}
  .inspiration{height:100svh;min-height:0}
  .inspiration h2{top:56px;left:0;width:100%;max-width:100%;padding:0 16px;font-size:clamp(36px,9vw,52px);white-space:normal;transform:rotate(-2.98deg)}
  .inspiration>p{top:125px;font-size:10px}
  .inspiration-gallery{bottom:14svh;height:42vw}
  .inspiration-track{animation-duration:24s}
  .inspiration-set{gap:12px;padding-right:12px}
  .inspiration-gallery img{flex-basis:42vw;width:42vw;height:42vw;border-radius:8px}
}

@media(max-width:560px){
  .talleres-hero{height:100svh}
  .talleres-hero .site-header{padding:20px 17px}
  .talleres-paper{top:132px;left:3%;width:94%}
  .talleres-intro-copy{top:177px;left:9%;width:51%}
  .talleres-intro-copy h1{font-size:10vw}
  .talleres-intro-copy p{font-size:3vw}
  .talleres-intro-photo{left:auto;top:340px;right:6%;width:52%;height:50vw}
  .talleres-workshop{margin-bottom:66px}
  .workshop-photo,.workshop-copy{width:82%}
  .workshop-doodle{width:19%}
}

@media(prefers-reduced-motion:reduce){.inspiration-track{animation:none}}

/* Ajustes de lectura y objetivos táctiles; solo móvil. */

@media(max-width:560px){
  .talleres-list{padding:42px 18px 12px}
  .talleres-workshop{max-width:480px}
  .workshop-heading h2,.workshop-price{font-size:clamp(16px,4.4vw,20px)}
  .workshop-meta{font-size:12px}
  .workshop-copy>p:not(.workshop-meta){font-size:clamp(14px,3.7vw,16px);line-height:1.5}
  .workshop-copy .workshop-includes{font-size:clamp(17px,4.4vw,19px)!important}
  .workshop-copy .text-cta{min-height:44px;padding:10px 16px;font-size:12px}
}

/* Hero y header móvil alineados con la landing. */
@media(max-width:700px){
  .talleres-hero{height:80svh;min-height:500px;max-height:760px}
  .talleres-hero .site-header{padding:30px 17px 18px}
  .talleres-hero .mini-mark{display:none}
  .talleres-hero .header-cta{margin-left:0}
}

/* Hero de talleres: imagen completa en móvil y fichas centradas con márgenes iguales. */
.talleres-mobile-art{display:none}
@media(max-width:700px){
  .talleres-paper,
  .talleres-intro-copy,
  .talleres-intro-photo{display:none}
  .talleres-mobile-art{
    display:block;
    position:absolute;
    left:50%;
    top:calc(50% + 28px);
    width:100%;
    max-width:none;
    height:auto;
    transform:translate(-50%,-50%);
  }
  .talleres-workshop,
  .talleres-workshop:nth-child(even){align-items:center}
  .workshop-photo,
  .workshop-copy{width:min(82%,430px)}
}


/* Proporciones compactas para móvil: hero cercano al alto del footer y mejor ritmo en inspiración. */
@media(max-width:700px){
  .talleres-hero{
    height:clamp(380px,46svh,440px);
    min-height:380px;
    max-height:440px;
  }
  .inspiration{
    height:clamp(420px,62svh,580px);
    min-height:420px;
    max-height:580px;
  }
  .inspiration h2{
    top:clamp(22px,4svh,36px);
    font-size:clamp(32px,8vw,46px);
  }
  .inspiration>p{
    top:clamp(82px,11.5svh,106px);
    padding:0 16px;
    font-size:10px;
  }
  .inspiration-gallery{
    bottom:clamp(72px,12svh,112px);
    height:min(38vw,180px);
  }
  .inspiration-gallery img{
    flex-basis:min(38vw,180px);
    width:min(38vw,180px);
    height:min(38vw,180px);
  }
}
@media(max-width:700px) and (max-height:680px){
  .inspiration{
    height:420px;
    min-height:420px;
  }
  .inspiration h2{top:20px}
  .inspiration>p{top:76px}
  .inspiration-gallery{bottom:58px;height:min(36vw,150px)}
  .inspiration-gallery img{
    flex-basis:min(36vw,150px);
    width:min(36vw,150px);
    height:min(36vw,150px);
  }
}


/* En móvil, título/texto y carrusel de inspiración con el mismo aire hacia el footer. */
@media(max-width:700px){
  .inspiration{
    --inspiration-mobile-gap:clamp(28px,5svh,44px);
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    height:auto;
    min-height:0;
    max-height:none;
    overflow:hidden;
    padding:clamp(30px,5svh,44px) 0 var(--inspiration-mobile-gap);
  }
  .inspiration h2{
    position:relative;
    top:auto;
    left:auto;
    width:100%;
    max-width:100%;
    margin:0;
    padding:0 16px;
    font-size:clamp(32px,8vw,46px);
    line-height:1.05;
    white-space:normal;
    transform:rotate(-2.98deg);
  }
  .inspiration>p{
    position:relative;
    top:auto;
    left:auto;
    width:100%;
    margin:14px 0 0;
    padding:0 16px;
    font-size:10px;
  }
  .inspiration-gallery{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    width:100%;
    height:min(38vw,180px);
    margin:var(--inspiration-mobile-gap) 0 0;
  }
}


/* Centra la imagen completa del hero en móvil, con márgenes simétricos. */
@media(max-width:700px){
  .talleres-mobile-art{
    left:50%;
    top:50%;
    width:calc(100% - 36px);
    height:auto;
    max-height:calc(100% - 112px);
    transform:translate(-50%,-50%);
    object-fit:contain;
  }
}
