:root{--bg:#f7f3e8;--surface:#fffaf0;--text:#3e2f1c;--muted:#7a6a5a;--accent:#d94f30;--accent-soft:#f5d5c8;--line:#d9c9b8;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--radius:8px;--shadow:0 1px 3px rgba(0,0,0,.08);--font-serif:Georgia,'Times New Roman',serif;--font-sans:Georgia,'Times New Roman',serif;--content-max:1100px;--content-pad:var(--space-4);--header-h:60px;--transition:all .2s ease;}

*{box-sizing:border-box;margin:0;padding:0;}

html{scroll-behavior:smooth;}

body{background:var(--bg);color:var(--text);font-family:var(--font-serif);line-height:1.6;font-size:1rem;overflow-x:hidden;}

img{max-width:100%;height:auto;display:block;}

svg{max-width:100%;height:auto;}

a{color:var(--accent);text-decoration:none;transition:var(--transition);}

a:hover{color:var(--text);}

a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px;}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

.wp-header,.wp-footer{background:var(--surface);border-bottom:1px solid var(--line);}

.wp-header{position:sticky;top:0;z-index:100;}

.wp-footer{border-top:1px solid var(--line);}

.contenido-principal{max-width:var(--content-max);margin:0 auto;padding:var(--space-6) var(--content-pad);}

.seccion{padding:var(--space-7) 0;}

.titulo-seccion{font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.2;margin-bottom:var(--space-4);font-weight:700;color:var(--text);}

.intro{font-size:clamp(1.1rem,2.5vw,1.25rem);color:var(--muted);margin-bottom:var(--space-6);}

.para{font-size:1rem;margin-bottom:var(--space-4);}

.marca{font-size:1.5rem;font-weight:700;color:var(--text);letter-spacing:.5px;}

.menu-principal{display:flex;gap:var(--space-4);list-style:none;padding:0;margin:0;}

.enlace-menu{color:var(--text);font-weight:500;padding:var(--space-2) 0;border-bottom:2px solid transparent;}

.enlace-menu:hover{border-bottom-color:var(--accent);color:var(--accent);}

.icono{width:1em;height:1em;fill:currentColor;stroke:currentColor;}

.ilustracion-hero{max-width:100%;height:auto;margin-bottom:var(--space-5);}

.titulo-tarjeta{font-size:1.25rem;margin-bottom:var(--space-2);}

.texto-tarjeta{color:var(--muted);font-size:.95rem;}

.red-de-tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-5);}

.lista-definicion{display:grid;grid-template-columns:1fr;gap:var(--space-2);margin:var(--space-4) 0;}

.lista-definicion dt{font-weight:700;color:var(--accent);}

.lista-definicion dd{margin:0;color:var(--muted);}

.tabla-studio{width:100%;border-collapse:collapse;margin:var(--space-4) 0;font-size:.95rem;}

.tabla-studio th,.tabla-studio td{border:1px solid var(--line);padding:var(--space-2) var(--space-3);text-align:left;}

.tabla-studio th{background:var(--surface);font-weight:700;}

.tabla-studio td{background:var(--bg);}

.cita{font-style:italic;border-left:4px solid var(--accent);padding:var(--space-4) var(--space-5);margin:var(--space-5) 0;background:var(--surface);border-radius:0 var(--radius) var(--radius) 0;}

.pull-phrase{font-size:clamp(1.2rem,3vw,1.5rem);font-weight:700;color:var(--accent);line-height:1.3;margin:var(--space-6) 0;}

.etiqueta{display:inline-block;background:var(--accent-soft);color:var(--accent);padding:var(--space-1) var(--space-3);border-radius:20px;font-size:.85rem;font-weight:600;margin-right:var(--space-2);}

.etiquetas-adicionales{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);}

.formulario-contacto{display:grid;gap:var(--space-4);}

.formulario-contacto input,.formulario-contacto textarea,.formulario-contacto button{font-family:inherit;font-size:1rem;padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);}

.formulario-contacto input:focus,.formulario-contacto textarea:focus{outline:2px solid var(--accent);border-color:transparent;}

.formulario-contacto button{background:var(--accent);color:var(--surface);border:none;cursor:pointer;font-weight:700;transition:var(--transition);}

.formulario-contacto button:hover{background:var(--text);}

.contacto-detalle{display:flex;align-items:center;gap:var(--space-2);color:var(--muted);}

.contacto-detalle .icono{flex-shrink:0;}

.mapaplano{width:100%;height:auto;border:1px solid var(--line);border-radius:var(--radius);}

.datos-studio{display:grid;gap:var(--space-2);margin:var(--space-4) 0;}

.lista-proceso{list-style:none;padding:0;counter-reset:proceso;}

.lista-proceso li{counter-increment:proceso;padding:var(--space-3) 0;border-bottom:1px solid var(--line);display:flex;align-items:baseline;gap:var(--space-3);}

.lista-proceso li::before{content:counter(proceso);font-weight:700;color:var(--accent);font-size:1.2rem;}

.etapas{display:grid;gap:var(--space-4);margin:var(--space-5) 0;}

.apartado{margin-bottom:var(--space-6);}

.biogra{font-size:1rem;color:var(--muted);}

.historia{max-width:70ch;}

.teachers,.members{display:grid;gap:var(--space-5);}

.crew-fit{display:flex;align-items:center;gap:var(--space-3);}

.crew-fit .icono{font-size:2rem;}

.extra,.extra-muestrario-mired-cozy{background:var(--accent-soft);border-radius:var(--radius);padding:var(--space-5);margin:var(--space-5) 0;}

.extra-nombre-,.extra-nombre-p{font-weight:700;color:var(--accent);}

.recalc{font-style:italic;color:var(--muted);}

.sin{color:var(--muted);}

.sty{font-style:italic;}

.nombre...{font-weight:700;}

.place.,.num-est-{font-weight:600;color:var(--text);}

.filía{font-style:italic;}

.coro{font-style:italic;}

.real{font-weight:700;}

.azuleajue{font-size:.9rem;color:var(--muted);}

.con-liin-mniud-etca-{border-left:2px solid var(--accent);padding-left:var(--space-3);}

.resursionatabl-bone{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4);}

.panel-llamado{background:var(--accent);color:var(--surface);padding:var(--space-6);border-radius:var(--radius);text-align:center;}

.panel-llamado a{color:var(--surface);text-decoration:underline;}

.panel-llamado a:hover{color:var(--accent-soft);}

.pie-de-pagina{max-width:var(--content-max);margin:0 auto;padding:var(--space-5) var(--content-pad);display:flex;flex-direction:column;gap:var(--space-3);align-items:center;text-align:center;}

.pie-de-pagina .marca{font-size:1.2rem;}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

@media (min-width:640px){:root{--content-pad:var(--space-6);}
.contenido-principal{padding:var(--space-7) var(--content-pad);}
.seccion{padding:var(--space-8) 0;}
.lista-definicion{grid-template-columns:1fr 2fr;}
.etapas{grid-template-columns:repeat(2,1fr);}
.teachers,.members{grid-template-columns:repeat(2,1fr);}
.pie-de-pagina{flex-direction:row;justify-content:space-between;text-align:left;}
}

@media (min-width:900px){.contenido-principal{padding:var(--space-8) var(--content-pad);}
.seccion{padding:var(--space-9) 0;}
.etapas{grid-template-columns:repeat(3,1fr);}
.teachers,.members{grid-template-columns:repeat(3,1fr);}
}

@media (min-width:1200px){.contenido-principal{padding:var(--space-8) 0;}
.seccion{padding:var(--space-9) 0;}
}


:root {
  --bg: #f7f3e8; --surface: #fffaf0; --text: #3e2f1c;
  --muted: #7a6a5a; --accent: #d94f30; --accent-soft: #f5d5c8;
  --line: #d9c9b8;
}
html { font-family: Georgia, 'Times New Roman', serif; background: var(--bg); color: var(--text); }
body { line-height: 1.6; }
.cabecera { }
.marca { font-weight: 700; text-decoration: none; color: inherit; font-size: 1.15rem; }
.menu-principal { }
.enlace-menu { text-decoration: none; color: inherit; }
.contenido-principal { }
.seccion { padding: 1.5rem 0; }
.titulo-seccion { font-size: clamp(1.5rem, 4vw, 2.35rem); margin: 0 0 0.6rem; line-height: 1.2; }
.intro { font-size: clamp(1.05rem, 2vw, 1.25rem); color: var(--muted); margin: 0 0 1.2rem; }
.red-de-tarjetas { display: grid; grid-template-columns: 1fr; gap: 1rem; }
.tarjeta-baile {
  background: var(--surface); border: 1px solid var(--line);
  border-radius: 0.75rem; padding: 1.15rem 1.25rem;
}
.titulo-tarjeta { margin: 0 0 0.4rem; font-size: 1.05rem; }
.texto-tarjeta { margin: 0; color: var(--muted); }
.pie-de-pagina { }
.contacto { color: var(--muted); }
.etiqueta { }
a { color: var(--accent); }
@media (min-width: 720px) {
  .red-de-tarjetas { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
}

/* --- repaired missing selectors --- */
.espacio { min-width: 0; }
.icono-fiesta { min-width: 0; }
.icono-grupo { min-width: 0; }
.icono-individual { min-width: 0; }
.icono-tarjeta { min-width: 0; }
.icono-ubi { min-width: 0; }
.introduccion { min-width: 0; }
.proceso { min-width: 0; }
.tarjeta-contacto-inicio { min-width: 0; }
.tarjeta-horarios { min-width: 0; }
.tarjeta-local { min-width: 0; }
.– { min-width: 0; }


/* --- guard --- */
*, *::before, *::after { box-sizing: border-box; }
html, body { max-width: 100%; overflow-x: hidden; margin: 0; }
main > *, section > *, ul > li, ol > li { min-width: 0; }
svg, table, pre, blockquote, img { max-width: 100%; }
svg { height: auto; }
h1, h2, h3, h4, p, li, dt, dd, td, th, a, figcaption {
  overflow-wrap: anywhere;
}
table { display: block; overflow-x: auto; }
main header, main footer, main nav { display: none !important; }

.wp-header, .wp-footer, main {
  padding-left: max(1.25rem, env(safe-area-inset-left)) !important;
  padding-right: max(1.25rem, env(safe-area-inset-right)) !important;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.wp-header {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.75rem 1.25rem;
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}
.wp-footer {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
  margin-top: 2rem;
}
.wp-tagline {
  flex-basis: 100%;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  font-size: 0.95rem !important;
  line-height: 1.45 !important;
  max-width: none !important;
}

/* --- hamburger --- */
.wp-menu { margin: 0 0 0 auto; }
.wp-menu-btn {
  list-style: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  cursor: pointer;
  color: inherit;
  background: var(--surface, #fff);
  border: 1px solid var(--line, #d4d4d4);
  border-radius: 0.5rem;
}
.wp-menu-btn::-webkit-details-marker,
.wp-menu-btn::marker { display: none; content: ""; }
.wp-menu-bars,
.wp-menu-bars::before,
.wp-menu-bars::after {
  display: block;
  width: 1.15rem;
  height: 2px;
  border-radius: 1px;
  background: currentColor;
  position: relative;
}
.wp-menu-bars::before,
.wp-menu-bars::after {
  content: "";
  position: absolute;
  left: 0;
}
.wp-menu-bars::before { top: -6px; }
.wp-menu-bars::after { top: 6px; }

@media (max-width: 719px) {
  .wp-nav-wide { display: none !important; }
  .wp-menu:not([open]) > nav { display: none !important; }
  .wp-menu[open] { flex-basis: 100%; width: 100%; margin: 0; }
  .wp-menu[open] > nav {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    gap: 0 !important;
    padding: 0.5rem 0 0.15rem !important;
  }
  .wp-menu[open] > nav > a {
    display: block !important;
    padding: 0.7rem 0.15rem !important;
  }
}

@media (min-width: 720px) {
  .wp-menu { display: none !important; }
  .wp-nav-wide {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0.35rem 1.1rem;
    margin: 0 0 0 auto;
    align-items: center;
  }
}
