/* AnandaSoulLove: editorial y sereno. Mucho aire, líneas finas en vez de tarjetas, fotos a sangre,
   serif ligera grande + sans neutra pequeña. Retícula de 12 columnas a 1240px. Portado de la maqueta. */

:root{
  --paper:#FFF9F8;     /* fondo: rosa muy claro */
  --paper-2:#F8ECEF;   /* bandas secundarias */
  --ink:#3A2633;       /* texto: ciruela profundo (13:1 sobre el fondo) */
  --ink-2:#5C4855;     /* texto secundario (8:1, AAA) */
  --accent:#835A7A;    /* malva de marca oscurecido para texto (5,4:1, AA) */
  --line:#E8D8DD;
  --on-dark:#F6EFEC;
  --err:#B4553F;
  --ok:#4F7F63;
  --display:var(--wp--preset--font-family--display,"Domine",Georgia,serif);
  --sans:var(--wp--preset--font-family--sans,"Open Sans",system-ui,sans-serif);
  --t-xs:.8rem;--t-sm:.94rem;--t-md:1.05rem;--t-lg:clamp(1.25rem,1.1rem + .6vw,1.6rem);
  --t-xl:clamp(1.7rem,1.3rem + 1.6vw,2.6rem);--t-2xl:clamp(2.2rem,1.5rem + 2.8vw,4rem);
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-io:cubic-bezier(.65,.05,.36,1);
  --ease-sine:cubic-bezier(.39,.575,.565,1);
  --pad:max(20px,env(safe-area-inset-left,0px));
  --pad-r:max(20px,env(safe-area-inset-right,0px));
  --hdr-h:96px;
  color-scheme:light;
}
/* Oscuro: el botón de la cabecera pone data-mode="dark" en <html>. También se cambian los colores de WordPress */
:root[data-mode="dark"]{
  --paper:#1A1418;--paper-2:#241C21;--ink:#F1E6EA;--ink-2:#B8A5B0;--accent:#D4A9C7;--line:#3A2E35;--err:#E8907C;--ok:#8FC3A5;
  --wp--preset--color--paper:#1A1418;--wp--preset--color--paper-2:#241C21;--wp--preset--color--ink:#F1E6EA;
  --wp--preset--color--ink-2:#B8A5B0;--wp--preset--color--accent:#D4A9C7;--wp--preset--color--line:#3A2E35;
  color-scheme:dark}

/* ===== Base ===== */
*{box-sizing:border-box}
h1,h2,h3,h4,p,li,figcaption,summary,.label{overflow-wrap:break-word}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--t-md)/1.7 var(--sans);text-rendering:optimizeLegibility}
:root[data-mode="dark"] body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;margin:0;line-height:1.18;letter-spacing:-.01em;text-wrap:balance;color:var(--ink)}
h1{font-size:var(--t-2xl)}h2{font-size:var(--t-xl)}h3{font-size:var(--t-lg);line-height:1.2}h4{font-size:1.15rem}
em{font-style:normal;color:var(--accent)}
p{margin:0;max-width:60ch}
a{color:inherit}
img{display:block;max-width:100%}
ul,ol{margin:0}
:focus-visible{outline:1.5px solid var(--accent);outline-offset:4px}
.screen-reader-text,.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* WordPress: sin márgenes automáticos entre bloques; el espacio lo marca cada sección */
.wp-site-blocks>*,.entry>*,.wp-block-group>*{margin-block:0}
figure.wp-block-image,.wp-block-image{margin:0}
.wp-block-image img{height:auto}
.wp-element-caption{margin:12px 0 0;text-align:left}

.wrap{max-width:1240px;margin-inline:auto;padding-left:var(--pad);padding-right:var(--pad-r);width:100%}
.label{font:600 var(--t-xs)/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.muted{color:var(--ink-2)}
.sec{padding-block:clamp(80px,12vw,168px)}
.pt0{padding-top:0}
.page-top{padding-top:clamp(40px,6vw,88px)}
.stack{display:flex;flex-direction:column;gap:22px}

/* Enlace con flecha: párrafo con clase "more" */
.more{display:flex}
.more a,.link{display:inline-flex;align-items:center;gap:.7em;font:500 var(--t-sm)/1.3 var(--sans);letter-spacing:.04em;text-decoration:none;padding-bottom:6px;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;transition:background-size .5s var(--ease)}
.more a::after,.link .ar{content:"→";transition:transform .5s var(--ease)}
.more a:hover,.link:hover{background-size:30% 1px}
.more a:hover::after,.link:hover .ar{transform:translateX(6px)}
.links{display:flex;gap:32px;flex-wrap:wrap;margin-top:12px}

/* Botones (bloque Botones y botones propios) */
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px}
.wp-block-button__link,.btn{display:inline-flex;align-items:center;justify-content:center;gap:.8em;padding:1.05em 1.8em;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:500 var(--t-sm)/1 var(--sans);letter-spacing:.05em;text-decoration:none;cursor:pointer;transition:background .35s var(--ease),color .35s var(--ease)}
.wp-block-button__link:hover,.btn:hover{background:transparent;color:var(--ink)}
.is-style-outline .wp-block-button__link,.btn.out{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.is-style-outline .wp-block-button__link:hover,.btn.out:hover{background:var(--ink);color:var(--paper)}
.btn.big,.big-btn .wp-block-button__link{min-height:52px;padding:1em 1.8em;font-size:1rem}
.btn[disabled]{opacity:.55;cursor:not-allowed}

/* Enlace que hace clicable toda la tarjeta o fila */
.stretch{position:relative}
.stretch a::before{content:"";position:absolute;inset:0;z-index:1}

/* ===== Cabecera ===== */
.wp-site-blocks>header.site-header{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:60;height:var(--hdr-h)}
/* La altura del bloque sticky es fija: al compactarse la cabecera, el contenido no salta */
.hdr{background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .5s;color:var(--ink)}
.is-scrolled .hdr{border-color:var(--line)}
.hdr-inner{display:flex;align-items:center;gap:28px;height:var(--hdr-h);transition:height .7s var(--ease-io)}
.is-scrolled .hdr-inner{height:76px}
.brand{display:block;margin-right:auto;flex-shrink:0}
.brand img{height:56px;width:auto;transition:height .7s var(--ease-io)}
.is-scrolled .brand img{height:46px}
.l-dark{display:none}
:root[data-mode="dark"] .l-ink{display:none}
:root[data-mode="dark"] .l-dark{display:block}

.hdr .nav{font:500 .95rem/1.2 var(--sans);letter-spacing:.02em}
.hdr .nav .wp-block-navigation__container{gap:30px;align-items:center}
.hdr .nav .wp-block-navigation-item__content{text-decoration:none;position:relative;padding-block:6px;white-space:nowrap}
.hdr .nav .wp-block-navigation-item:not(.pill) .wp-block-navigation-item__content::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.hdr .nav .wp-block-navigation-item__content:hover::after,.hdr .nav .current-menu-item>.wp-block-navigation-item__content::after{transform:scaleX(1)}
.hdr .nav .pill>.wp-block-navigation-item__content{border:1px solid currentColor;padding:.6em 1.15em}
/* Página actual: color malva de la marca y línea fija (también en el menú móvil y en Mein Konto) */
.hdr .nav .current-menu-item>.wp-block-navigation-item__content,.hdr .nav .wp-block-navigation-item__content[aria-current="page"]{color:var(--accent)}
.hdr .nav .current-menu-item.pill>.wp-block-navigation-item__content{border-color:var(--accent)}
.hdr .is-menu-open .current-menu-item>.wp-block-navigation-item__content{border-bottom-color:var(--accent)}
.hdr .wp-block-navigation__responsive-container-open,.hdr .wp-block-navigation__responsive-container-close{font:500 var(--t-sm) var(--sans);color:var(--ink)}
/* Menú móvil a pantalla completa */
.hdr .wp-block-navigation__responsive-container.is-menu-open{background:var(--paper)!important;color:var(--ink)!important;padding:28px var(--pad-r) 40px var(--pad)}
.hdr .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:64px}
.hdr .is-menu-open .wp-block-navigation__container{gap:0!important;width:100%;align-items:stretch!important}
.hdr .is-menu-open .wp-block-navigation-item{width:100%}
.hdr .is-menu-open .wp-block-navigation-item__content{display:block;width:100%;font:300 clamp(1.7rem,1.2rem + 3vw,2.2rem)/1.3 var(--display);border-bottom:1px solid var(--line);padding-block:12px!important}
.hdr .is-menu-open .pill>.wp-block-navigation-item__content{border:0;border-bottom:1px solid var(--line);padding-inline:0}
.hdr .is-menu-open .wp-block-navigation-item__content::after{display:none}
/* Como en la maqueta: cuatro enlaces en el centro; Kontakt y Mein Konto a la derecha, más discretos */
@media (min-width:1301px){
  .hdr-inner{gap:clamp(40px,4vw,72px)} /* aire entre el logo y el menú */
  .hdr .nav{flex:1;min-width:0}
  .hdr .nav .wp-block-navigation__responsive-container,.hdr .nav .wp-block-navigation__responsive-container-content,.hdr .nav .wp-block-navigation__container{flex:1;width:100%}
  .hdr .nav .wp-block-navigation__container>.wp-block-navigation-item:first-child{margin-left:auto}
  .hdr .nav .wp-block-navigation__container{gap:clamp(22px,2.2vw,34px)}
  .hdr .nav .acc{font:400 var(--t-sm)/1.2 var(--sans);letter-spacing:0}
  .hdr .nav .acc:not(.pill){margin-left:auto}
  .hdr .nav .acc.pill{margin-left:-12px}
}
/* Socias: con Mediathek son siete entradas y entre 1301 y 1520 px quedaban apelotonadas: hamburguesa */
@media (min-width:1301px) and (max-width:1520px){
  .hdr:has(.asl-mt-nav) .nav{flex:0 0 auto}
  .hdr:has(.asl-mt-nav) .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
  .hdr:has(.asl-mt-nav) .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
  .hdr:has(.asl-mt-nav) .wp-block-navigation__responsive-container-close{display:flex}
}
/* En el menú abierto las entradas van en columna: sin los márgenes automáticos del escritorio */
.hdr .is-menu-open .wp-block-navigation-item{margin-left:0!important}
/* El desenfoque convierte la cabecera en el contenedor de los elementos fijos y encerraría el menú
   a pantalla completa en 80 px de alto (los enlaces quedaban encima de la página). Con el menú abierto
   y en móvil/tablet no se usa: además el scroll va más suave sin él */
html.has-modal-open .hdr,.hdr:has(.is-menu-open){backdrop-filter:none;-webkit-backdrop-filter:none}
@media (max-width:1300px){.hdr{background:var(--paper);backdrop-filter:none;-webkit-backdrop-filter:none}}
/* Con siete entradas (Mediathek para socias) el menú no cabe por debajo de ~1300 px: hamburguesa hasta 1300 px */
@media (max-width:1300px){
  .hdr .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
  .hdr .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
  .hdr .wp-block-navigation__responsive-container-close{display:flex}
  :root{--hdr-h:80px}
  .brand img{height:46px}
  .is-scrolled .hdr-inner{height:68px}
  .is-scrolled .brand img{height:40px}
}
@media (max-width:380px){.brand img,.is-scrolled .brand img{height:36px}.hdr-inner{gap:16px}}
@media (orientation:landscape) and (max-height:520px){:root{--hdr-h:64px}.is-scrolled .hdr-inner{height:64px}.brand img,.is-scrolled .brand img{height:38px}}

/* Botón de modo claro/oscuro */
.mode{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;transition:border-color .3s;order:3}
.mode:hover{border-color:var(--ink)}
.mode svg{width:16px;height:16px}
.mode .sun{display:none}
:root[data-mode="dark"] .mode .sun{display:block}
:root[data-mode="dark"] .mode .moon{display:none}

/* ===== Hero: texto a la izquierda, foto en arco a la derecha ===== */
.hero{position:relative;height:clamp(560px,calc(90vh - var(--hdr-h)),780px);overflow:hidden;background:var(--paper)}
.hero-slides{position:absolute;inset:0}
.hero .slide{margin:0;position:absolute;top:20px;bottom:40px;left:52%;right:max(var(--pad-r),calc((100vw - 1240px)/2 + 20px));border-radius:999px 999px 0 0;overflow:hidden;background:var(--paper-2);clip-path:inset(100% 0 0 0 round 999px 999px 0 0);z-index:0;will-change:clip-path}
.hero .slide.on{clip-path:inset(0 0 0 0 round 999px 999px 0 0);z-index:2;transition:clip-path 1.9s var(--ease-io)}
.hero .slide.prev{clip-path:inset(0 0 0 0 round 999px 999px 0 0);z-index:1}
/* Sin JavaScript se ve la primera foto */
.hero:not(.js) .slide:first-child{clip-path:inset(0 0 0 0 round 999px 999px 0 0)}
.hero .slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);will-change:transform}
.hero:not(.js) .slide img{transform:none}
.hero .slide.on img{transform:scale(1.02);transition:transform var(--ms,8000ms) var(--ease-sine)}
.hero .slide.prev img{transform:scale(1.02);transition:transform 1.9s var(--ease)}

.hero-copy{position:absolute;z-index:4;inset:0;display:flex;flex-direction:column;justify-content:center;gap:44px;max-width:1240px;margin-inline:auto;padding-left:var(--pad);padding-right:var(--pad-r);pointer-events:none}
.hero-copy a,.hero-copy button{pointer-events:auto}
.hero-txt{display:grid;width:min(100%,calc((100% - 220px)*5/12 + 80px))}
.hero-item{grid-area:1/1;display:flex;flex-direction:column;gap:22px}
.hero.js .hero-item{opacity:0;transition:opacity .7s var(--ease)}
.hero.js .hero-item.on{opacity:1;transition:opacity .3s var(--ease)}
.hero.js .hero-item:not(.on){pointer-events:none;visibility:hidden;transition:opacity .7s var(--ease),visibility 0s .7s}
.hero:not(.js) .hero-item:not(:first-child){display:none}
.hero-item h1,.hero-item h2{font-size:var(--t-2xl)}
.hero-item .line{display:block;overflow:hidden;padding-bottom:.08em}
.hero-item .line>span{display:block;opacity:0;transform:translateY(110%);transition:transform 0s .7s,opacity 0s .7s}
.hero-item.on .line>span{opacity:1;transform:none;transition:transform 1.5s var(--ease) .45s,opacity 1.1s var(--ease) .45s}
.hero-item.on .line:nth-child(2)>span{transition-delay:.62s,.62s}
.hero-item p{color:var(--ink-2);max-width:40ch}
.hero-item .more a{color:var(--ink)}
.hero.js .hero-item>:not(h1):not(h2){opacity:0;transform:translateY(10px);transition:opacity 0s .7s,transform 0s .7s}
.hero.js .hero-item.on>:not(h1):not(h2){opacity:1;transform:none;transition:opacity 1.2s var(--ease) .9s,transform 1.4s var(--ease) .9s}
.hero-side{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;font-size:var(--t-sm);width:min(100%,calc((100% - 220px)*5/12 + 80px))}
.count{white-space:nowrap;font:300 1.1rem/1 var(--display);font-variant-numeric:tabular-nums;letter-spacing:.06em}
.count b{font-weight:400}
.bars{display:flex;gap:8px}
.bars button{width:clamp(30px,9vw,52px);height:20px;border:0;background:none;padding:0;cursor:pointer;position:relative}
.bars button::before,.bars button::after{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line)}
.bars button::after{background:var(--ink);transform:scaleX(0);transform-origin:left}
.bars button.on::after{animation:asl-fill var(--ms,8000ms) linear forwards}
.hero.paused .bars button.on::after{animation-play-state:paused}
@keyframes asl-fill{to{transform:scaleX(1)}}
.hero-side .pz{background:none;border:0;color:var(--ink-2);font:500 var(--t-xs) var(--sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;opacity:.8}
/* Apilado: móviles y tablets en vertical */
@media (max-width:640px),(max-width:960px) and (orientation:portrait){
  .hero{height:auto;display:grid;padding-top:12px}
  .hero-slides{position:relative;inset:auto;grid-area:1/1;display:grid;margin-left:var(--pad);width:min(calc(100vw - var(--pad) - var(--pad-r)),520px);aspect-ratio:4/5;max-height:min(64vh,640px)}
  .hero .slide{position:relative;inset:auto;grid-area:1/1;width:100%;height:100%}
  .hero-copy{position:relative;inset:auto;grid-area:2/1;display:flex;padding-block:32px 56px;gap:28px;width:100%}
  .hero-txt,.hero-side{width:100%}
}
@media (orientation:landscape) and (max-height:520px){
  .hero{height:auto;min-height:420px}
  .hero .slide{top:16px;bottom:24px}
  .hero-copy{position:relative;inset:auto;padding-block:32px}
  .hero-txt,.hero-side{width:48%}
  .hero-item h1,.hero-item h2{font-size:clamp(1.6rem,1rem + 2.6vw,2.4rem)}
}

/* ===== Intro ===== */
.intro{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.intro .label{grid-column:1/4;padding-top:.8em}
.intro .big{grid-column:4/12;font:300 var(--t-xl)/1.22 var(--display);letter-spacing:-.01em;max-width:none}
.intro .sub{grid-column:4/11;color:var(--ink-2)}
@media (max-width:760px){.intro .label,.intro .big,.intro .sub{grid-column:1/-1}}

/* ===== Índice de accesos: filas tipográficas ===== */
.index .row{position:relative;isolation:isolate;display:grid;grid-template-columns:140px minmax(0,1.3fr) minmax(0,2fr) 40px;gap:20px;align-items:baseline;padding-block:clamp(24px,3vw,36px);border-top:1px solid var(--line)}
.index .row::before{content:"";position:absolute;inset:0 -16px;z-index:-1;background:var(--paper-2);opacity:0;transition:opacity .5s var(--ease)}
.index .row:hover::before,.index .row:focus-within::before{opacity:1}
.index .row:last-child{border-bottom:1px solid var(--line)}
.index .row::after{content:"→";grid-column:4;grid-row:1;justify-self:end;font-size:1.3rem;transition:transform .5s var(--ease)}
.index .row:hover::after{transform:translateX(6px)}
.index .k{font:400 clamp(1.5rem,1.1rem + 1.2vw,2.2rem)/1.15 var(--display);transition:color .4s var(--ease)}
.index .k a{text-decoration:none}
.index .k a::before{content:"";position:absolute;inset:0;z-index:1}
.index .row:hover .k{color:var(--accent)}
.index .d{color:var(--ink-2)}
@media (max-width:760px){.index .row{grid-template-columns:1fr 30px;gap:6px 20px}.index .row>*{grid-column:1}.index .row::after{grid-column:2;grid-row:1/4;align-self:center}}

/* ===== Carrusel de servicios ===== */
.gal-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:44px}
.gal-head .t{display:flex;flex-direction:column;gap:16px}
.gal-ctrl{display:flex;gap:24px;align-items:center}
.gal-ctrl button{background:none;border:0;color:var(--ink);font:400 1.4rem var(--sans);cursor:pointer;padding:6px}
.gal-track{--g:clamp(20px,2.6vw,36px);display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3*var(--g))/3.25);gap:var(--g);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px;margin:-6px;scroll-padding-inline:6px}
@media (max-width:960px){.gal-track{grid-auto-columns:calc((100% - 2*var(--g))/2.2)}}
@media (max-width:600px){.gal-track{grid-auto-columns:calc((100% - var(--g))/1.15)}}
.gal-track::-webkit-scrollbar{display:none}
.gal-track .item{position:relative;scroll-snap-align:start;display:flex;flex-direction:column;gap:14px;min-width:0}
.item .ph{aspect-ratio:3/4;overflow:hidden;background:var(--paper-2)}
.item .ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.8s var(--ease)}
.item:hover .ph img{transform:scale(1.045)}
.item h3 a{text-decoration:none}
.item h3 a::before{content:"";position:absolute;inset:0;z-index:1}
.item p:not(.label){color:var(--ink-2);font-size:var(--t-sm)}
.progress{margin-top:40px;height:1px;background:var(--line);position:relative}
.progress i{position:absolute;inset:0 auto 0 0;width:20%;background:var(--ink);transition:width .5s var(--ease),left .5s var(--ease)}

/* ===== Kundalini: foto fija y texto ===== */
.split{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:start}
.split .media{grid-column:1/6;position:sticky;top:110px}
.split .media img{aspect-ratio:4/5;object-fit:cover;width:100%;height:auto}
.split .media figcaption{font:600 var(--t-xs)/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.split .txt{grid-column:7/13;display:flex;flex-direction:column;gap:28px}
.benefits{display:flex;flex-direction:column}
.benefits>.wp-block-group{display:grid;grid-template-columns:1fr 1.4fr;gap:24px;padding-block:26px;border-top:1px solid var(--line)}
.benefits>.wp-block-group:last-child{border-bottom:1px solid var(--line)}
.benefits h3{font-size:1.35rem}
.benefits p{color:var(--ink-2);font-size:var(--t-sm)}
@media (max-width:1200px){.benefits>.wp-block-group{grid-template-columns:1fr;gap:8px}}
.split.flip .media{grid-column:8/13;grid-row:1}
.split.flip .txt{grid-column:1/7;grid-row:1}
@media (max-width:860px){.split .media,.split .txt,.split.flip .media,.split.flip .txt{grid-column:1/-1;grid-row:auto}.split .media{position:static}}

/* ===== Transformación ===== */
.trans{display:grid;grid-template-columns:repeat(12,1fr);gap:28px 20px;border-top:1px solid var(--line);padding-top:clamp(64px,8vw,110px)}
.trans .h{grid-column:1/6;display:flex;flex-direction:column;gap:16px}
.trans .txt{grid-column:7/13;display:flex;flex-direction:column;gap:20px}
.trans .txt .big{font:400 var(--t-lg)/1.45 var(--display);color:var(--ink)}
@media (max-width:860px){.trans .h,.trans .txt{grid-column:1/-1}}

/* ===== Reseñas ===== */
.reviews{display:grid;grid-template-columns:repeat(12,1fr);gap:40px 20px;border-top:1px solid var(--line);padding-top:clamp(64px,8vw,110px);align-items:start}
.reviews .h{grid-column:1/5;grid-row:span 2;display:flex;flex-direction:column;gap:18px}
.reviews .list{grid-column:6/13;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.rev{margin:0;display:flex;flex-direction:column;gap:14px;padding-top:20px;border-top:1px solid var(--ink);min-width:0}
.rev .q{font:400 2.6rem/.6 var(--display);color:var(--accent)}
.rev blockquote{margin:0;font:400 1.02rem/1.6 var(--display);color:var(--ink-2)}
.rev figcaption{display:flex;justify-content:space-between;gap:12px;font-size:var(--t-sm)}
.stars{color:var(--accent);letter-spacing:.15em}
.reviews .legal{grid-column:6/13;font-size:var(--t-xs);color:var(--ink-2)}
/* Widget de Trustindex dentro de nuestra rejilla, con nuestras fuentes y colores */
.reviews .list.widget{display:block;min-width:0}
.reviews .widget .ti-widget,.reviews .widget .ti-widget *{font-family:var(--sans)!important}
.reviews .widget .ti-name{font-weight:600!important;color:var(--ink)!important}
.reviews .widget .ti-review-content,.reviews .widget .ti-review-text-container{font-family:var(--display)!important;color:var(--ink)!important;line-height:1.6!important}
.reviews .widget .ti-date,.reviews .widget .ti-read-more{color:var(--ink-2)!important}
.reviews .widget .ti-review-item>.ti-inner{background:var(--paper-2)!important;border:0!important;border-radius:0!important;box-shadow:none!important}
:root[data-mode="dark"] .reviews .widget .ti-review-item>.ti-inner{background:color-mix(in srgb,var(--paper) 88%,#fff)!important}
@media (max-width:1200px){.reviews .h,.reviews .list,.reviews .legal{grid-column:1/-1;grid-row:auto}}
@media (max-width:640px){.reviews .list{grid-template-columns:1fr}}

/* ===== Cita y sobre mí (Home) ===== */
.quote{font:300 var(--t-xl)/1.2 var(--display);letter-spacing:-.01em;max-width:24ch;margin-top:28px}
.about{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end;margin-top:clamp(48px,7vw,96px)}
.about .ph{grid-column:1/6;overflow:hidden}
.about .ph img{width:100%;aspect-ratio:4/5;object-fit:cover;height:auto}
.about .txt{grid-column:7/12;display:flex;flex-direction:column;gap:22px;padding-bottom:8px}
@media (max-width:860px){.about .ph,.about .txt{grid-column:1/-1}}

/* ===== Banda de newsletter ===== */
.nl{background:var(--paper-2)}
.nl-inner{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end}
.nl-inner>h2{grid-column:1/7}
.nl-inner>.asl-nl-mini{grid-column:8/13}
@media (max-width:860px){.nl-inner>h2,.nl-inner>.asl-nl-mini{grid-column:1/-1}}
.uline{display:flex;border-bottom:1px solid var(--ink);align-items:center}
.uline input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:300 1.35rem var(--display);padding:14px 0;outline:none}
.uline input::placeholder{color:var(--ink-2)}
.uline button{background:none;border:0;color:var(--ink);font:500 var(--t-sm) var(--sans);letter-spacing:.05em;cursor:pointer;padding:14px 0 14px 16px;display:flex;gap:.6em;align-items:center}
.note{font-size:var(--t-xs);color:var(--ink-2);margin-top:12px}

/* ===== Pie ===== */
.ftr{border-top:1px solid var(--line)}
.ftr-inner{padding-block:72px 36px;display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.ftr .claim-wrap{grid-column:1/6}
/* Frase del pie: misma letra que el resto del pie, discreta */
.ftr .claim{font:400 var(--t-md)/1.65 var(--sans);color:var(--ink-2);max-width:38ch}
.ftr .claim-wrap img{height:40px;width:auto;margin-bottom:28px}
.ftr .col{grid-column:span 3;display:flex;flex-direction:column;gap:8px;font-size:var(--t-sm)}
.ftr .col:nth-child(2){grid-column:7/10}
.ftr .col .label{margin-bottom:6px}
.ftr .col a,.ftr-links a{text-decoration:none;color:var(--ink-2)}
.ftr .col a:hover,.ftr-links a:hover,.ftr .legal a:hover{color:var(--ink)}
.ftr-links{display:flex;flex-direction:column;gap:8px}
.ftr .bottom{grid-column:1/-1;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:28px;margin-top:40px;border-top:1px solid var(--line);font-size:var(--t-xs);color:var(--ink-2)}
.ftr .legal{display:flex;gap:6px 18px;flex-wrap:wrap}
.ftr .legal a{text-decoration:none;color:var(--ink-2)}
@media (max-width:1100px){.ftr .claim-wrap{grid-column:1/-1}.ftr .col,.ftr .col:nth-child(2){grid-column:span 6}}
@media (max-width:560px){.ftr .col,.ftr .col:nth-child(2){grid-column:1/-1}}

/* ===== Cabecera de páginas interiores ===== */
.page-head{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end;padding-bottom:56px;border-bottom:1px solid var(--line)}
.page-head .t{grid-column:1/8;display:flex;flex-direction:column;gap:18px}
.page-head>p{grid-column:8/13;color:var(--ink-2)}
@media (max-width:860px){.page-head .t,.page-head>p{grid-column:1/-1}}

/* ===== Páginas sencillas (Impressum, Datenschutz, Mein Konto…) ===== */
.prose{padding-bottom:clamp(72px,9vw,120px)}
.prose .page-title{margin-bottom:40px;max-width:24ch}
.prose .entry{max-width:760px;display:flex;flex-direction:column;gap:18px}
.prose .entry h2{font-size:var(--t-lg);margin-top:24px}
.prose .entry h3{font-size:1.2rem;margin-top:12px}
.prose .entry ul,.prose .entry ol{padding-left:1.2em;display:flex;flex-direction:column;gap:6px}
.prose .entry a{color:var(--accent)}
.post-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:40px;margin-top:40px}
.not-found{display:flex;flex-direction:column;gap:22px;padding-bottom:clamp(80px,12vw,160px)}

/* ===== Formularios ===== */
.form{display:flex;flex-direction:column;gap:6px;max-width:460px}
.form .f{display:flex;flex-direction:column;border-bottom:1px solid var(--line);padding-top:14px;transition:border-color .3s}
.form .f:focus-within{border-color:var(--ink)}
.form label.l{font:500 var(--t-xs) var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.form input[type=text],.form input[type=email]{border:0;background:transparent;color:var(--ink);font:300 1.4rem var(--display);padding:6px 0 12px;outline:none;width:100%}
.form textarea{border:0;background:transparent;color:var(--ink);font:400 1.05rem/1.6 var(--sans);padding:6px 0 12px;outline:none;resize:vertical;min-height:130px;width:100%}
.form select{border:0;background:transparent;color:var(--ink);font:400 1.1rem var(--sans);padding:8px 0 12px;outline:none;width:100%;cursor:pointer}
.form select option{color:#3A2633;background:#fff}
.form .btn{align-self:flex-start}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:var(--t-xs);color:var(--ink-2);margin-block:18px 10px;line-height:1.55}
.consent input{accent-color:var(--ink);margin-top:3px;flex-shrink:0}
.consent a{color:var(--ink)}
.gift{font-size:var(--t-sm);color:var(--ink-2);border-left:1px solid var(--accent);padding-left:14px;margin-bottom:12px}
.gift b{color:var(--ink);font-weight:500}
.err{font-size:var(--t-sm);color:var(--err)}
.done{display:flex;flex-direction:column;gap:14px;max-width:460px}
.done h2{font-size:2rem}
.done .label{color:var(--accent)}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.admin-hint{font-size:var(--t-xs);line-height:1.5;color:var(--ink-2);border:1px dashed var(--accent);padding:.8em 1em;max-width:60ch}

/* ===== Newsletter (página) ===== */
/* Dentro de la retícula de 1240 px, como el resto de páginas: foto con márgenes, no a sangre */
.nlp{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:40px clamp(40px,6vw,96px);align-items:stretch;max-width:1240px;margin-inline:auto;padding:clamp(40px,5vw,72px) var(--pad-r) 0 var(--pad)}
/* La foto ocupa todo el alto del texto */
.nlp .img{position:relative;overflow:hidden;margin:0;min-height:420px;background:var(--paper-2)}
.nlp .img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nlp .body{padding-block:clamp(8px,2vw,32px);display:flex;flex-direction:column;justify-content:center;gap:28px;min-width:0}
.nlp h1{font-size:clamp(2.4rem,1.6rem + 2.4vw,3.8rem)}
@media (max-width:860px){.nlp{grid-template-columns:1fr}.nlp .img{min-height:0;aspect-ratio:4/3}}
.weekly-head{display:flex;flex-direction:column;gap:16px;margin-bottom:48px}
.weekly{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.weekly>.wp-block-group{border-top:1px solid var(--ink);padding-top:20px;display:flex;flex-direction:column;gap:10px}
.weekly p{color:var(--ink-2);font-size:var(--t-sm)}
@media (max-width:860px){.weekly{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.weekly{grid-template-columns:1fr}}
.byline{display:flex;gap:24px;align-items:center;margin-top:72px;padding-top:32px;border-top:1px solid var(--line)}
.byline .wp-block-image{flex-shrink:0}
.byline img{width:88px;height:88px!important;border-radius:50%;object-fit:cover}
.byline p{font-size:var(--t-sm);color:var(--ink-2)}

/* ===== Angebote ===== */
.offer{display:grid;grid-template-columns:repeat(12,1fr);gap:40px 20px;align-items:start;padding-block:clamp(64px,8vw,110px);border-bottom:1px solid var(--line);scroll-margin-top:90px}
.offer .ph{grid-column:1/6;aspect-ratio:4/5;overflow:hidden;background:var(--paper-2);position:sticky;top:110px}
.offer .ph img{width:100%;height:100%;object-fit:cover}
.offer .txt{grid-column:7/13;display:flex;flex-direction:column;gap:20px}
.offer.flip .ph{grid-column:8/13;grid-row:1}
.offer.flip .txt{grid-column:1/7;grid-row:1}
.offer .lead{font:400 var(--t-lg)/1.45 var(--display);max-width:none}
.ticks{list-style:none;padding:0}
.ticks li{display:grid;grid-template-columns:28px 1fr;padding-block:12px;border-top:1px solid var(--line);color:var(--ink-2);font-size:var(--t-sm)}
.ticks li::before{content:"—";color:var(--accent)}
.ticks li:last-child{border-bottom:1px solid var(--line)}
@media (max-width:860px){.offer .ph,.offer .txt,.offer.flip .ph,.offer.flip .txt{grid-column:1/-1;grid-row:auto}.offer .ph{position:static;aspect-ratio:4/3}}
.extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-block:clamp(64px,8vw,110px)}
.extra>.wp-block-group{position:relative;display:flex;flex-direction:column;gap:12px;padding-top:24px;border-top:1px solid var(--ink);min-width:0}
.extra h3 a{text-decoration:none}
.extra h3 a::before{content:"";position:absolute;inset:0;z-index:1}
.extra p:not(.label){color:var(--ink-2);font-size:var(--t-sm)}
@media (max-width:640px){.extra{grid-template-columns:1fr}}

/* ===== Kontakt y FAQ ===== */
.contact{display:grid;grid-template-columns:repeat(12,1fr);gap:48px 20px;padding-block:56px clamp(64px,8vw,110px)}
.contact .info{grid-column:1/5;display:flex;flex-direction:column}
.contact .info>.wp-block-group{display:flex;flex-direction:column;gap:4px;padding-block:18px;border-top:1px solid var(--line)}
.contact .info>.wp-block-group:last-child{border-bottom:1px solid var(--line)}
.contact .info a{text-decoration:none}
.contact .asl-form-wrap{grid-column:6/12}
.contact .form{max-width:none}
@media (max-width:860px){.contact .info,.contact .asl-form-wrap{grid-column:1/-1}}
.faq{display:grid;grid-template-columns:repeat(12,1fr);gap:28px 20px;padding-block:clamp(64px,8vw,110px);border-top:1px solid var(--line)}
.faq .h{grid-column:1/5;display:flex;flex-direction:column;gap:16px}
.faq .list{grid-column:6/13;min-width:0}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:baseline;padding-block:22px;font:400 1.12rem/1.4 var(--display)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:300 1.5rem/1 var(--sans);color:var(--accent);transition:transform .4s var(--ease);flex-shrink:0}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details>:not(summary){color:var(--ink-2);font-size:var(--t-sm);margin-bottom:12px}
.faq details>:last-child{padding-bottom:14px}
.faq details ul{padding-left:1.1em;display:flex;flex-direction:column;gap:8px}
@media (max-width:860px){.faq .h,.faq .list{grid-column:1/-1}}
@supports (interpolate-size:allow-keywords){
  :root{interpolate-size:allow-keywords}
  .faq details::details-content{height:0;overflow:clip;transition:height .6s var(--ease-io),content-visibility .6s allow-discrete}
  .faq details[open]::details-content{height:auto}
}

/* ===== Live: lista simple de clases (letra grande, un botón claro) ===== */
.live2{max-width:920px;margin-inline:auto;display:flex;flex-direction:column;gap:28px;padding-block:48px clamp(72px,9vw,120px);font-size:1.08rem}
.live-now{background:var(--paper-2);padding:clamp(24px,4vw,40px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 32px;align-items:center}
.live-now h2{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.2rem)}
.live-now p{color:var(--ink-2)}
@media (max-width:640px){.live-now{grid-template-columns:1fr}}
.access{display:flex;gap:10px 18px;align-items:baseline;flex-wrap:wrap;border-left:2px solid var(--accent);padding:4px 0 4px 18px;color:var(--ink);max-width:none}
.month{font:600 var(--t-xs)/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);padding:28px 0 14px;border-bottom:1px solid var(--ink)}
.slist{list-style:none;margin:0;padding:0}
.slist li{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) 190px;gap:10px 28px;align-items:center;padding-block:26px;border-bottom:1px solid var(--line)}
.slist .d h3{font-size:clamp(1.3rem,1.1rem + .6vw,1.55rem);line-height:1.25}
.slist .d p,.slist .w p{margin-top:6px;color:var(--ink-2);font-size:1rem}
.slist .w strong{font-weight:600;font-size:1.08rem}
.slist .a{justify-self:end;text-align:right}
.slist .hint{font-size:.95rem;color:var(--ink-2)}
/* Icono arriba, alineado con la primera línea aunque el texto ocupe dos */
.slist .ico{display:inline-flex;align-items:flex-start;gap:8px}
.slist .ico svg{width:18px;height:18px;flex-shrink:0;margin-top:.2em;color:var(--accent)}
.slist .note-s{display:block;margin-top:6px;font-size:.95rem;color:var(--ink-2)}
.slist-wrap .is-extra{display:none}
.slist-wrap.show-all .is-extra,.no-js .slist-wrap .is-extra{display:block}
.slist-wrap.show-all li.is-extra,.no-js .slist-wrap li.is-extra{display:grid}
@media (max-width:760px){.slist li{grid-template-columns:1fr}.slist .a{justify-self:start;text-align:left}}
.livepill{display:inline-flex;align-items:center;gap:8px;font:600 .75rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.livepill::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;animation:asl-breathe 2.8s var(--ease-io) infinite}
@keyframes asl-breathe{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}
.asl-more{align-self:flex-start}
.asl-notice{background:var(--paper-2);border-left:2px solid var(--accent);padding:16px 20px;max-width:none}
.empty{color:var(--ink-2)}

/* Stundenplan semanal (arriba en Live-Stunden) */
.plan{display:flex;flex-direction:column;gap:18px;padding-bottom:clamp(40px,5vw,64px);border-bottom:1px solid var(--line)}
.plan h2{font-size:var(--t-xl)}
.plan-list{list-style:none;padding:0;margin:8px 0 6px;display:flex;flex-direction:column}
.plan-list li{padding-block:18px;border-top:1px solid var(--line);color:var(--ink-2);font-size:1.08rem}
.plan-list li:last-child{border-bottom:1px solid var(--line)}
.plan-list strong{display:block;margin-bottom:4px;font:400 clamp(1.25rem,1.1rem + .5vw,1.55rem)/1.3 var(--display);color:var(--ink)}
.plan p strong{font-weight:600;color:var(--ink)}

/* Probestunde */
.sample{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px 40px;align-items:center;margin-top:24px;padding-top:clamp(48px,6vw,72px);border-top:1px solid var(--line)}
.sample .poster{position:relative;display:block;aspect-ratio:16/9;max-width:100%;overflow:hidden;border:0;padding:0;cursor:pointer;background:var(--paper-2)}
.sample .poster img{width:100%;height:100%;object-fit:cover;object-position:50% 35%;transition:transform 1.8s var(--ease)}
.sample .poster:hover img{transform:scale(1.03)}
.sample .play{position:absolute;inset:0;margin:auto;width:78px;height:78px;border-radius:50%;background:color-mix(in srgb,var(--paper) 90%,transparent);color:var(--ink);display:grid;place-items:center;transition:transform .6s var(--ease)}
.sample .poster:hover .play{transform:scale(1.06)}
.sample .play svg{width:24px;height:24px;margin-left:4px}
.sample .txt{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.sample .consent-video{font-size:var(--t-xs);color:var(--ink-2)}
@media (max-width:760px){.sample{grid-template-columns:1fr}}

/* Planes */
.plans{margin-top:24px;scroll-margin-top:100px}
.plans-head{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;margin-bottom:48px}
.plans-head .t{grid-column:1/8;display:flex;flex-direction:column;gap:16px}
.plans-head .login{grid-column:9/13;align-self:end;justify-self:end;font-size:var(--t-sm);display:flex;gap:16px;align-items:center}
@media (max-width:860px){.plans-head .t,.plans-head .login{grid-column:1/-1;justify-self:start}}
.tiers{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink)}
.tier{padding:32px 28px 36px;display:flex;flex-direction:column;gap:18px;border-right:1px solid var(--line)}
.tier:first-child{padding-left:0}.tier:last-child{border-right:0;padding-right:0}
.tier .price{font:300 3rem/1 var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;max-width:none}
.tier .price small{font:400 var(--t-sm) var(--sans);color:var(--ink-2);letter-spacing:0}
.tier .price s{font-size:1.2rem;color:var(--ink-2);margin-right:8px}
.tier ul{list-style:none;padding:0;font-size:var(--t-sm);color:var(--ink-2)}
.tier li{padding-block:9px;border-top:1px solid var(--line)}
.tier .wp-block-buttons{margin-top:auto}
.tier .flag{color:var(--accent)}
.tier .intro-price{margin-top:-10px;font:600 var(--t-xs)/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.nlp .lead{font:400 var(--t-lg)/1.45 var(--display);color:var(--ink);max-width:none}
.tier .incl{margin-bottom:-10px;font-size:var(--t-sm);font-weight:600;color:var(--ink)}
@media (max-width:860px){.tiers{grid-template-columns:1fr}.tier,.tier:first-child,.tier:last-child{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}}
.plans .foot{margin-top:28px;font-size:var(--t-sm);color:var(--ink-2)}

/* Modal de vídeo */
.asl-modal{position:fixed;inset:0;z-index:90;background:rgba(20,13,17,.82);display:grid;place-items:center;padding:24px var(--pad-r) 24px var(--pad);animation:asl-fade .5s var(--ease)}
.asl-modal .box{width:100%;max-width:960px;display:flex;flex-direction:column;gap:16px;color:var(--on-dark);animation:asl-rise .9s var(--ease)}
.asl-modal .vid{aspect-ratio:16/9;background:#0E0A0C}
.asl-modal .vid iframe{width:100%;height:100%;border:0;display:block}
.asl-modal .bar{display:flex;justify-content:space-between;align-items:baseline;gap:20px}
.asl-modal .bar h3{color:var(--on-dark)}
.asl-modal .bar button{background:none;border:0;color:var(--on-dark);font:500 var(--t-sm) var(--sans);cursor:pointer}
@keyframes asl-rise{from{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}
@keyframes asl-fade{from{opacity:0}to{opacity:1}}

html.has-video{overflow:hidden}

/* ===== Mediathek ===== */
.mt-sec{padding-block:48px clamp(72px,9vw,120px)}
.mt-bar{display:flex;justify-content:space-between;align-items:center;gap:20px 32px;flex-wrap:wrap;margin-bottom:clamp(36px,5vw,56px)}
.mt-filter{display:flex;flex-wrap:wrap;gap:10px}
.chip{display:inline-flex;align-items:baseline;gap:.55em;padding:.6em 1.15em;border:1px solid var(--line);border-radius:999px;text-decoration:none;font:500 var(--t-sm)/1.2 var(--sans);color:var(--ink-2);transition:border-color .3s var(--ease),color .3s var(--ease),background .3s var(--ease)}
.chip span{font-size:var(--t-xs);font-variant-numeric:tabular-nums;opacity:.7}
.chip:hover{border-color:var(--ink);color:var(--ink)}
.chip[aria-current]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.mt-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 24px}
.mt-card{display:flex;flex-direction:column;gap:18px;min-width:0}
.mt-card.is-out,.mt-card.is-extra{display:none}
.no-js .mt-card.is-extra{display:flex}
.no-js .mt-more{display:none}
.mt-card .body{display:flex;flex-direction:column;gap:10px;min-width:0}
.mt-card .meta{display:flex;flex-wrap:wrap;gap:.2em .6em;font:600 var(--t-xs)/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);max-width:none}
.mt-card h3{font-size:1.3rem;line-height:1.3}
.mt-card .txt{color:var(--ink-2);font-size:var(--t-sm);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
/* La más reciente (o la primera del filtro) ocupa todo el ancho */
.mt-card.is-lead{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:28px clamp(28px,4vw,56px);align-items:center;padding-bottom:56px;border-bottom:1px solid var(--line)}
.mt-card.is-lead .body{gap:16px}
.mt-card.is-lead .body::before{content:"Neueste Aufnahme";font:600 var(--t-xs)/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.mt-card.is-lead h3{font-size:var(--t-xl);line-height:1.18}
.mt-card.is-lead .txt{font-size:var(--t-md);-webkit-line-clamp:5}
.mt-poster{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--paper-2);color:var(--ink);text-decoration:none}
.mt-poster img{width:100%;height:100%;object-fit:cover;transition:transform 1.8s var(--ease),filter .6s var(--ease)}
a.mt-poster:hover img{transform:scale(1.04)}
.ph-empty{position:absolute;inset:0;display:flex;align-items:flex-end;padding:16px 18px;background:radial-gradient(120% 90% at 78% 12%,color-mix(in srgb,var(--accent) 26%,var(--paper-2)) 0%,var(--paper-2) 62%)}
.ph-empty span{font:600 var(--t-xs)/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.mt-poster .play,.mt-poster .lock{position:absolute;inset:0;margin:auto;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--paper) 90%,transparent);color:var(--ink);transition:transform .6s var(--ease)}
.mt-card.is-lead .mt-poster .play{width:84px;height:84px}
.mt-poster .play svg{width:20px;height:20px;margin-left:3px}
.mt-poster .lock svg{width:20px;height:20px}
a.mt-poster:hover .play{transform:scale(1.08)}
.mt-poster .dur,.mt-poster .seen{position:absolute;bottom:12px;font:600 .72rem/1 var(--sans);letter-spacing:.08em;padding:.55em .75em;background:color-mix(in srgb,var(--paper) 90%,transparent);color:var(--ink)}
.mt-poster .dur{right:12px;font-variant-numeric:tabular-nums}
.mt-poster .seen{left:12px;bottom:auto;top:12px;display:none;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}
.mt-card.is-seen .seen{display:block}
.mt-poster.is-locked img{filter:saturate(.55) blur(1px);transform:scale(1.04)}
.mt-poster.is-locked::after{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--paper) 35%,transparent)}
.mt-poster.is-locked .lock{z-index:1}
.mt-more{margin:56px auto 0;display:flex}
.asl-mt .consent-video{margin-top:48px;font-size:var(--t-xs);color:var(--ink-2)}
.asl-mt .empty{max-width:52ch}
/* Sin acceso: adelanto con candado y llamada a la membresía */
.asl-mt.is-guest .mt-grid{gap:40px 24px}
.mt-gate{margin-top:clamp(40px,6vw,64px);padding:clamp(28px,5vw,56px);background:var(--paper-2);display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.mt-gate h2{max-width:20ch}
.mt-gate .label{color:var(--accent)}
.mt-gate .login{display:flex;gap:14px;align-items:center;font-size:var(--t-sm);margin-top:6px}
.mt-gate .wp-block-buttons{margin-top:8px}
@media (max-width:960px){.mt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mt-card.is-lead{grid-template-columns:1fr;padding-bottom:40px}}
@media (max-width:600px){.mt-grid{grid-template-columns:1fr;gap:44px}.mt-bar{flex-direction:column;align-items:flex-start}.mt-filter{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px;scrollbar-width:none}.chip{flex-shrink:0}}

/* ===== Mein Konto y registro ===== */
.acc-page{padding-bottom:clamp(72px,9vw,120px)}
.acc-guest{display:grid;grid-template-columns:repeat(12,1fr);gap:48px 20px;align-items:start}
.acc-login{grid-column:1/7;display:flex;flex-direction:column;gap:22px}
.acc-login h1{font-size:clamp(2.2rem,1.5rem + 2.4vw,3.4rem)}
.acc-join{grid-column:8/13;background:var(--paper-2);padding:clamp(28px,4vw,48px);display:flex;flex-direction:column;align-items:flex-start;gap:20px;position:sticky;top:120px}
.acc-join .label{color:var(--accent)}
.acc-join h2{font-size:var(--t-lg);line-height:1.3}
.acc-join .ticks{align-self:stretch}
.acc-join .foot{font-size:var(--t-sm);color:var(--ink-2)}
.acc-join .foot a{color:var(--ink)}
@media (max-width:960px){.acc-login,.acc-join{grid-column:1/-1}.acc-join{position:static}}
/* Formularios de acceso: el de WordPress (#asl-login) y los de Paid Member Subscriptions */
.acc-form{max-width:460px;margin-top:8px}
.acc-form form{display:flex;flex-direction:column;gap:6px;margin:0}
.acc-form form>p,.acc-form .pms-field,.acc-form li{margin:0;list-style:none}
.acc-form ul{padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.acc-form .login-username,.acc-form .login-password,.acc-form .pms-field:has(input:not([type=checkbox]):not([type=radio]):not([type=hidden])){display:flex;flex-direction:column;border-bottom:1px solid var(--line);padding-top:14px;transition:border-color .3s}
.acc-form .login-username:focus-within,.acc-form .login-password:focus-within,.acc-form .pms-field:focus-within{border-color:var(--ink)}
.acc-form label{font:500 var(--t-xs)/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.acc-form input[type=text],.acc-form input[type=email],.acc-form input[type=password],.acc-form input[type=tel],.acc-form select{border:0;background:transparent;color:var(--ink);font:300 1.35rem var(--display);padding:6px 0 12px;outline:none;width:100%;border-radius:0;box-shadow:none}
.acc-form .login-remember label,.acc-form label:has(input[type=checkbox]),.acc-form label:has(input[type=radio]){display:flex;gap:10px;align-items:center;text-transform:none;letter-spacing:0;font:400 var(--t-sm)/1.5 var(--sans);margin-top:14px}
.acc-form input[type=checkbox],.acc-form input[type=radio]{accent-color:var(--ink);width:16px;height:16px}
.acc-form input[type=submit],.acc-form button[type=submit],.acc-form .pms-submit,.acc-form .button{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:1em 1.8em;margin-top:18px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:500 1rem/1 var(--sans);letter-spacing:.04em;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease)}
.acc-form input[type=submit]:hover,.acc-form button[type=submit]:hover,.acc-form .button:hover{background:transparent;color:var(--ink)}
.acc-form .pms-field-subscriptions{border:0}
.acc-form .pms-subscription-plan{padding:14px 0;border-top:1px solid var(--line)}
.acc-form .pms-form-errors-wrapper,.acc-form .pms_success-messages-wrapper,.acc-page .err{background:var(--paper-2);border-left:2px solid var(--err);padding:12px 16px;color:var(--ink);font-size:var(--t-sm);max-width:460px}
.acc-form .pms_success-messages-wrapper{border-color:var(--ok)}
.acc-lost{font-size:var(--t-sm)}
/* Con sesión iniciada */
.acc-page .page-head>p{justify-self:end;align-self:end}
@media (max-width:860px){.acc-page .page-head>p{justify-self:start}}
.acc-status{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px 20px;align-items:center;margin-top:40px;padding:24px 28px;background:var(--paper-2)}
.acc-status .dot{width:10px;height:10px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 6px color-mix(in srgb,var(--ok) 18%,transparent)}
.acc-status.is-off .dot{background:var(--ink-2);box-shadow:0 0 0 6px color-mix(in srgb,var(--ink-2) 15%,transparent)}
.acc-status strong{font:400 1.25rem/1.3 var(--display)}
.acc-status p{color:var(--ink-2);font-size:var(--t-sm);margin-top:2px}
@media (max-width:640px){.acc-status{grid-template-columns:auto 1fr}.acc-status .wp-block-buttons{grid-column:1/-1}}
.acc-tiles{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.acc-tiles li{position:relative;display:flex;flex-direction:column;gap:10px;padding-top:22px;border-top:1px solid var(--ink);min-width:0}
.acc-tiles h3{font-size:1.4rem}
.acc-tiles h3 a{text-decoration:none}
.acc-tiles h3 a::before{content:"";position:absolute;inset:0;z-index:1}
.acc-tiles p{color:var(--ink-2);font-size:var(--t-sm)}
.acc-tiles .ar{font-size:1.2rem;transition:transform .5s var(--ease)}
.acc-tiles li:hover .ar{transform:translateX(6px)}
.acc-tiles li:hover h3{color:var(--accent)}
@media (max-width:760px){.acc-tiles{grid-template-columns:1fr}}
.acc-manage{display:grid;grid-template-columns:repeat(12,1fr);gap:28px 20px;margin-top:clamp(64px,8vw,110px);padding-top:clamp(48px,6vw,72px);border-top:1px solid var(--line)}
.acc-manage .h{grid-column:1/5;display:flex;flex-direction:column;gap:14px}
.acc-manage .pms-wrap{grid-column:6/13;min-width:0}
.acc-manage>.admin-hint{grid-column:1/-1}
@media (max-width:860px){.acc-manage .h,.acc-manage .pms-wrap{grid-column:1/-1}}
/* Pestañas y tablas de la cuenta de Paid Member Subscriptions */
.pms-wrap .pms-account-navigation ul{list-style:none;padding:0;margin:0 0 28px;display:flex;flex-wrap:wrap;gap:10px}
.pms-wrap .pms-account-navigation a{display:inline-flex;padding:.6em 1.15em;border:1px solid var(--line);border-radius:999px;text-decoration:none;font:500 var(--t-sm)/1.2 var(--sans);color:var(--ink-2)}
.pms-wrap .pms-account-navigation .pms-account-navigation-link--active a,.pms-wrap .pms-account-navigation a:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pms-wrap table{width:100%;border-collapse:collapse;font-size:var(--t-sm)}
.pms-wrap th,.pms-wrap td{text-align:left;padding:12px 8px 12px 0;border-bottom:1px solid var(--line);vertical-align:top}
.pms-wrap th{font:600 var(--t-xs)/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.pms-wrap a{color:var(--accent)}
.pms-wrap input[type=text],.pms-wrap input[type=email],.pms-wrap input[type=password]{border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);font:300 1.2rem var(--display);padding:8px 0;width:100%;max-width:460px;outline:none}
.pms-wrap input[type=submit]{min-height:48px;padding:.9em 1.6em;margin-top:16px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--paper);font:500 var(--t-sm) var(--sans);cursor:pointer}

/* ===== Über mich ===== */
.ab-head{display:grid;grid-template-columns:repeat(12,1fr);gap:24px 20px;padding-bottom:clamp(64px,9vw,120px)}
.ab-head>*{grid-column:1/-1}
.ab-head h1{grid-column:1/11}
.ab-head .lead{grid-column:1/9;font:400 var(--t-lg)/1.55 var(--display);color:var(--ink-2);max-width:none}
.ab-intro{display:grid;grid-template-columns:repeat(12,1fr);gap:40px 20px;align-items:center}
.ab-intro .arch{grid-column:1/6;border-radius:999px 999px 0 0;overflow:hidden;aspect-ratio:3/4;background:var(--paper-2)}
.ab-intro .arch img{width:100%;height:100%;object-fit:cover}
.ab-intro .txt{grid-column:7/12;display:flex;flex-direction:column;gap:20px}
.ab-intro h2{font-size:var(--t-lg);line-height:1.35}
@media (max-width:860px){.ab-intro .arch,.ab-intro .txt,.ab-head h1,.ab-head .lead{grid-column:1/-1}}
.gallery{display:flex;flex-direction:column;gap:28px;padding-block:clamp(80px,10vw,140px)}
.gallery .row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.gallery .row figure{min-width:0;overflow:hidden}
.gallery .row img{width:100%;aspect-ratio:4/5;object-fit:cover;height:auto;transition:transform 1.8s var(--ease)}
.gallery .row figure:hover img{transform:scale(1.04)}
.gallery figcaption{font:500 var(--t-sm)/1.3 var(--sans);letter-spacing:.02em;color:var(--ink-2)}
@media (max-width:760px){.gallery .row{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}}
.story{max-width:600px;margin-inline:auto;display:flex;flex-direction:column;gap:22px}
/* Los párrafos ocupan toda la columna para que el bloque quede centrado bajo las fotos */
.story p{max-width:none}
.story h2{font-size:var(--t-lg);line-height:1.3;margin-top:40px}
.story .pull{font:400 var(--t-xl)/1.3 var(--display);letter-spacing:-.01em;margin-block:28px;max-width:none}
.cert{display:grid;grid-template-columns:repeat(12,1fr);gap:40px 20px;align-items:center;padding-block:clamp(80px,10vw,140px);border-top:1px solid var(--line);margin-top:clamp(80px,10vw,140px)}
.cert .ph{grid-column:8/13;grid-row:1;aspect-ratio:4/5;overflow:hidden}
.cert .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 70%}
.cert .txt{grid-column:1/7;grid-row:1;display:flex;flex-direction:column;gap:18px}
@media (max-width:860px){.cert .ph,.cert .txt{grid-column:1/-1;grid-row:auto}}
.closing{background:var(--paper-2)}
.closing .wrap{display:flex;flex-direction:column;gap:24px;max-width:900px}
.closing .big{font:400 var(--t-xl)/1.3 var(--display);letter-spacing:-.01em;max-width:none}

/* ===== Revelado al bajar (lo añade main.js; sin JS todo se ve) ===== */
.rv-on .rv:not(.in){opacity:0;transform:translateY(14px)}
.rv-on .rv{transition:opacity .9s var(--ease) var(--d,0s),transform 1.1s var(--ease) var(--d,0s)}
.rv-on .zoom img{transform:scale(1.06);transition:transform 2.2s var(--ease)}
.rv-on .zoom.in img{transform:scale(1)}
::view-transition-old(root),::view-transition-new(root){animation-duration:.55s;animation-timing-function:var(--ease)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .hero .slide{clip-path:none!important;opacity:0}.hero .slide.on,.hero:not(.js) .slide:first-child{opacity:1}
  .hero .slide img{transform:none!important}
  .hero-item .line>span,.hero.js .hero-item>*{transform:none!important;opacity:1!important}
}
