:root{
  --crema:#F6F1E9; --crema-2:#EFE7DA; --blanco:#FFFDF9;
  --verde:#2F4A3E; --verde-2:#3E5E50; --verde-claro:#DCE5DF;
  --terracota:#C8613F; --terracota-osc:#A44C2E; --terracota-claro:#F3D9CC;
  --texto:#24332C; --texto-2:#4A5F55; --borde:#DED4C4;
  --serif:"Fraunces", Georgia, "Times New Roman", serif;
  --sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --radio:18px; --max:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--crema);color:var(--texto);font-family:var(--sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--terracota-osc);text-underline-offset:3px}
a:hover{color:var(--verde)}
h1,h2,h3{font-family:var(--serif);color:var(--verde);line-height:1.15;font-weight:600;margin:0 0 .5em}
h1{font-size:clamp(2.1rem,4.6vw,3.4rem);letter-spacing:-.01em}
h2{font-size:clamp(1.7rem,3.2vw,2.4rem)}
h3{font-size:1.3rem}
p{margin:0 0 1em}
.em{font-style:italic;font-weight:400;color:var(--terracota-osc)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.section{padding:88px 0}
.section.alt{background:var(--blanco)}
.section.verde{background:var(--verde);color:#EAF0EC}
.section.verde h2,.section.verde h3{color:#fff}
.kicker{font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--terracota-osc);font-weight:600;margin-bottom:.8em;display:block}
.verde .kicker{color:#F0B9A3}
.lede{font-size:1.2rem;color:var(--texto-2);max-width:40em}
.center{text-align:center}.center .lede{margin-left:auto;margin-right:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;background:#fff;padding:8px 12px;z-index:99}

/* botones */
.btn{display:inline-flex;align-items:center;gap:.5em;padding:14px 26px;border-radius:999px;font-weight:600;text-decoration:none;font-size:1rem;border:2px solid transparent;transition:transform .15s,background .15s;min-height:48px}
.btn:hover{transform:translateY(-1px)}
.btn-primario{background:var(--terracota-osc);color:#fff}
.btn-primario:hover{background:#8E3F24;color:#fff}
.btn-sec{border-color:var(--verde);color:var(--verde);background:transparent}
.btn-sec:hover{background:var(--verde);color:#fff}
.btn-wa{background:#1F7A4D;color:#fff}.btn-wa:hover{background:#17603C;color:#fff}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.btn svg{width:20px;height:20px;flex:none}

/* cabecera */
.cab{position:sticky;top:0;z-index:50;background:rgba(246,241,233,.94);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--borde)}
.cab .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--verde)}
.marca svg{width:44px;height:44px;flex:none}
.marca span{font-family:var(--serif);font-size:1.35rem;font-weight:600;line-height:1}
.marca i{font-style:italic;font-weight:400;color:var(--terracota-osc)}
.nav{display:flex;align-items:center;gap:4px}
.nav a{color:var(--texto);text-decoration:none;padding:10px 12px;border-radius:10px;font-size:.96rem;font-weight:500}
.nav a:hover,.nav a[aria-current=page]{background:var(--crema-2);color:var(--verde)}
.nav .btn{margin-left:8px;padding:10px 20px;min-height:44px;color:#fff}
.menu-movil{display:none}
@media (max-width:980px){
  .nav{display:none}
  .menu-movil{display:block;position:relative}
  .menu-movil summary{list-style:none;cursor:pointer;padding:10px 14px;border:1px solid var(--borde);border-radius:12px;font-weight:600;color:var(--verde);min-height:44px;display:flex;align-items:center}
  .menu-movil summary::-webkit-details-marker{display:none}
  .menu-movil[open] .panel{display:flex}
  .menu-movil .panel{display:none;position:absolute;right:0;top:54px;background:var(--blanco);border:1px solid var(--borde);border-radius:16px;padding:10px;flex-direction:column;min-width:240px;box-shadow:0 18px 40px rgba(47,74,62,.14)}
  .menu-movil .panel a{padding:12px 14px;text-decoration:none;color:var(--texto);border-radius:10px;font-weight:500}
  .menu-movil .panel a:hover{background:var(--crema)}
  .menu-movil .panel .btn{color:#fff;justify-content:center;margin-top:6px}
}

/* hero */
.hero{padding:64px 0 72px}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero-foto{position:relative}
.hero-foto img{border-radius:28px;aspect-ratio:4/3.4;object-fit:cover;width:100%}
.hero-foto .sello{position:absolute;left:-18px;bottom:24px;background:var(--blanco);border-radius:16px;padding:14px 18px;box-shadow:0 14px 30px rgba(47,74,62,.14);font-size:.92rem;line-height:1.4;max-width:250px}
.hero-foto .sello b{display:block;color:var(--verde);font-family:var(--serif);font-size:1.05rem}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;padding:0;list-style:none}
.chips li{background:var(--blanco);border:1px solid var(--borde);border-radius:999px;padding:7px 14px;font-size:.9rem;color:var(--texto-2)}
.chips li::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--terracota);margin-right:8px;vertical-align:1px}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr;gap:36px}.hero-foto .sello{left:12px}}

/* tarjetas */
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:980px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{background:var(--blanco);border:1px solid var(--borde);border-radius:var(--radio);padding:28px;display:flex;flex-direction:column}
.card h3{margin-bottom:.4em}
.card p{color:var(--texto-2);font-size:.98rem}
.card .precio{margin-top:auto;padding-top:14px;font-size:.92rem;color:var(--verde);font-weight:600}
.card .mas{margin-top:12px;font-weight:600;text-decoration:none}
.card .mas::after{content:" →"}
a.card{text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}
a.card:hover{border-color:var(--terracota);transform:translateY(-2px)}
.icono-card{width:52px;height:52px;border-radius:14px;background:var(--terracota-claro);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.icono-card svg{width:28px;height:28px;stroke:var(--terracota-osc)}

/* frases que suenan */
.frases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:36px}
.frase{display:block;background:var(--blanco);border:1px solid var(--borde);border-radius:16px;padding:20px 22px;text-decoration:none;color:var(--texto);font-family:var(--serif);font-size:1.15rem;line-height:1.35;transition:border-color .15s}
.frase small{display:block;font-family:var(--sans);font-size:.85rem;color:var(--terracota-osc);margin-top:10px;font-weight:600}
.frase:hover{border-color:var(--terracota)}

/* pasos */
.pasos{counter-reset:p;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:40px}
.paso{counter-increment:p;padding:28px;border-radius:var(--radio);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}
.paso::before{content:counter(p);display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--terracota);color:#fff;font-family:var(--serif);font-size:1.3rem;margin-bottom:16px}
.paso p{color:#D5E0DA;margin:0}
@media (max-width:820px){.pasos{grid-template-columns:1fr}}

/* bloques texto + foto */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split.inv .split-foto{order:2}
.split-foto img{border-radius:24px;width:100%;object-fit:cover}
@media (max-width:860px){.split{grid-template-columns:1fr;gap:32px}.split.inv .split-foto{order:0}}
.galeria{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;margin-top:36px}
.galeria img{border-radius:18px;height:340px;width:100%;object-fit:cover}
@media (max-width:760px){.galeria{grid-template-columns:1fr 1fr}.galeria img{height:220px}.galeria img:first-child{grid-column:1/-1}}

/* página interior */
.migas{font-size:.88rem;color:var(--texto-2);padding-top:28px}
.migas a{color:var(--texto-2)}
.cab-pag{padding:24px 0 56px}
.cab-pag .lede{margin-top:10px}
.prosa{max-width:760px}
.prosa h2{margin-top:1.6em}
.prosa ul{padding-left:1.2em}
.prosa li{margin-bottom:.4em}
.lista-check{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 24px;margin:20px 0}
.lista-check li{position:relative;padding-left:30px}
.lista-check li::before{content:"";position:absolute;left:0;top:.45em;width:16px;height:16px;border-radius:50%;background:var(--terracota-claro);box-shadow:inset 0 0 0 4px var(--terracota)}
.dos-col{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
@media (max-width:920px){.dos-col{grid-template-columns:1fr}}
.aside{position:sticky;top:100px;background:var(--blanco);border:1px solid var(--borde);border-radius:var(--radio);padding:28px}
.aside h3{font-size:1.2rem}
.tabla-precio{width:100%;border-collapse:collapse;margin:12px 0 18px}
.tabla-precio td{padding:10px 0;border-bottom:1px solid var(--borde)}
.tabla-precio td:last-child{text-align:right;font-weight:600;color:var(--verde)}
.aside .btn{width:100%;justify-content:center;margin-top:10px}
.nota{font-size:.9rem;color:var(--texto-2)}

/* faq */
.faq{max-width:820px;margin:32px auto 0}
.faq details{background:var(--blanco);border:1px solid var(--borde);border-radius:16px;margin-bottom:12px;padding:0 24px}
.faq summary{cursor:pointer;list-style:none;padding:20px 32px 20px 0;font-weight:600;color:var(--verde);position:relative;font-size:1.05rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:14px;font-size:1.6rem;color:var(--terracota-osc);font-weight:400}
.faq details[open] summary::after{content:"–"}
.faq details p{color:var(--texto-2)}

/* persona */
.persona{display:grid;grid-template-columns:300px 1fr;gap:44px;align-items:start;background:var(--blanco);border:1px solid var(--borde);border-radius:24px;padding:36px}
.persona img{border-radius:18px;aspect-ratio:4/5;object-fit:cover;width:100%}
.persona .avatar{aspect-ratio:4/5;border-radius:18px;background:var(--verde-claro);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:4rem;color:var(--verde)}
.persona .rol{color:var(--terracota-osc);font-weight:600;margin-bottom:1em}
.etiquetas{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px;padding:0;list-style:none}
.etiquetas li{background:var(--crema);border-radius:999px;padding:5px 12px;font-size:.86rem;color:var(--verde)}
.donde{display:flex;gap:10px;align-items:flex-start;background:var(--crema);border-radius:14px;padding:14px 16px;font-size:.95rem}
@media (max-width:820px){.persona{grid-template-columns:1fr;padding:24px}.persona img,.persona .avatar{max-width:320px}}

/* despachos */
.despacho{background:var(--blanco);border:1px solid var(--borde);border-radius:var(--radio);padding:28px}
.despacho .quien{display:inline-block;background:var(--terracota-claro);color:var(--terracota-osc);border-radius:999px;padding:4px 12px;font-size:.85rem;font-weight:600;margin-bottom:12px}

/* formulario */
.form{display:grid;gap:16px}
.form .fila{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:620px){.form .fila{grid-template-columns:1fr}}
.form label{font-weight:600;font-size:.92rem;color:var(--verde);display:block;margin-bottom:6px}
.form input,.form textarea,.form select{width:100%;padding:13px 14px;border:1px solid var(--borde);border-radius:12px;background:#fff;font:inherit;color:var(--texto)}
.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--terracota);outline-offset:1px}
.form .legal{font-size:.85rem;color:var(--texto-2)}
.form .legal input{width:auto;margin-right:8px}
.aviso-form{display:none;background:var(--verde-claro);color:var(--verde);border-radius:12px;padding:14px 16px}

/* blog */
.post-card h3{font-size:1.15rem}
.tema{font-size:.8rem;font-weight:600;color:var(--terracota-osc);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}

/* cta final */
.cta-final{text-align:center}
.cta-final .btns{justify-content:center}

/* pie */
.pie{background:#22362D;color:#C9D6CF;padding:64px 0 120px;font-size:.95rem}
.pie a{color:#F0C2AF}
.pie .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px}
.pie h4{font-family:var(--serif);color:#fff;font-size:1.1rem;margin:0 0 12px;font-weight:600}
.pie ul{list-style:none;padding:0;margin:0}
.pie li{margin-bottom:8px}
.pie .marca{color:#fff;margin-bottom:14px}
.pie .marca i{color:#F0B9A3}
.pie .legal{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:.85rem}
@media (max-width:860px){.pie .cols{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.pie .cols{grid-template-columns:1fr}}

/* barra fija móvil */
.barra-movil{display:none}
@media (max-width:760px){
  .barra-movil{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(246,241,233,.97);border-top:1px solid var(--borde);z-index:60}
  .barra-movil .btn{justify-content:center;padding:12px 10px;font-size:.95rem}
}
.cta-final .lede{margin-left:auto;margin-right:auto}

/* ===================== v2: más cuidado visual ===================== */
body{font-size:17.5px}
h1{font-size:clamp(2.4rem,5.2vw,4.1rem);font-weight:600;letter-spacing:-.02em;font-variation-settings:"opsz" 120}
h2{letter-spacing:-.01em;font-variation-settings:"opsz" 96}
.section{padding:104px 0}
.kicker{display:inline-flex;align-items:center;gap:10px}
.kicker::before{content:"";width:22px;height:22px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M44 18 A32 32 0 0 0 44 82' fill='none' stroke='%23C8613F' stroke-width='11' stroke-linecap='round'/%3E%3Cpath d='M56 18 A32 32 0 0 1 56 82' fill='none' stroke='%232F4A3E' stroke-width='11' stroke-linecap='round'/%3E%3Ccircle cx='50' cy='50' r='9' fill='%23C8613F'/%3E%3C/svg%3E") center/contain no-repeat}
.verde .kicker::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M44 18 A32 32 0 0 0 44 82' fill='none' stroke='%23F0B9A3' stroke-width='11' stroke-linecap='round'/%3E%3Cpath d='M56 18 A32 32 0 0 1 56 82' fill='none' stroke='%23F6F1E9' stroke-width='11' stroke-linecap='round'/%3E%3Ccircle cx='50' cy='50' r='9' fill='%23F0B9A3'/%3E%3C/svg%3E")}
.center .kicker{justify-content:center}

/* hero v2 */
.hero{padding:56px 0 96px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;right:-180px;top:-120px;width:760px;height:760px;border-radius:50%;background:radial-gradient(circle at center,#EFDCCD 0,#EFDCCD 58%,transparent 58.2%);opacity:.55;pointer-events:none}
.hero .wrap{position:relative;grid-template-columns:1.1fr .9fr;gap:64px}
.hero h1 .em{display:block}
.hero .lede{font-family:var(--serif);font-size:1.45rem;line-height:1.4;color:var(--verde-2);font-style:italic;margin-bottom:18px}
.hero-foto{position:relative;padding:0 0 0 28px}
.hero-foto img{border-radius:300px 300px 32px 32px;aspect-ratio:4/5;object-position:50% 30%;box-shadow:0 30px 60px -24px rgba(47,74,62,.35)}
.hero-foto .arco{position:absolute;left:-6px;top:38%;width:120px;height:120px;z-index:2}
.hero-foto .sello{left:-10px;bottom:36px;z-index:3;padding:16px 20px;border:1px solid var(--borde)}
.hero-foto .sello2{position:absolute;right:-8px;top:56px;z-index:3;background:var(--verde);color:#fff;border-radius:16px;padding:12px 16px;font-size:.88rem;line-height:1.35;box-shadow:0 14px 30px rgba(47,74,62,.25)}
.hero-foto .sello2 b{display:block;font-family:var(--serif);font-size:1.15rem}
.confianza{display:flex;flex-wrap:wrap;gap:22px 32px;margin-top:34px;padding-top:26px;border-top:1px solid var(--borde)}
.confianza div{display:flex;align-items:center;gap:10px;font-size:.93rem;color:var(--texto-2);line-height:1.35}
.confianza svg{width:34px;height:34px;flex:none;padding:7px;border-radius:10px;background:var(--blanco);border:1px solid var(--borde);stroke:var(--terracota-osc)}
.confianza b{color:var(--verde);display:block}
@media (max-width:900px){.hero::before{right:-320px;top:-260px}.hero .wrap{grid-template-columns:1fr;gap:36px}.hero-foto{padding:0;max-width:440px;margin:0 auto}.hero-foto .sello2{right:6px}}

/* frases v2 */
.frase{position:relative;padding:26px 24px 22px 58px;border-radius:20px;font-size:1.2rem}
.frase::before{content:"“";position:absolute;left:20px;top:8px;font-family:var(--serif);font-size:3.4rem;line-height:1;color:var(--terracota)}
.frase:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(47,74,62,.4)}
.frase{transition:transform .15s,box-shadow .15s,border-color .15s}

/* servicios v2 */
.servicio{padding:0;overflow:hidden}
.servicio .top{padding:28px 28px 0}
.servicio .ico{width:60px;height:60px;border-radius:18px;display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.servicio .ico svg{width:32px;height:32px;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.servicio:nth-child(odd) .ico{background:var(--terracota-claro)}.servicio:nth-child(odd) .ico svg{stroke:var(--terracota-osc)}
.servicio:nth-child(even) .ico{background:var(--verde-claro)}.servicio:nth-child(even) .ico svg{stroke:var(--verde)}
.servicio .pie-card{margin-top:auto;padding:18px 28px;border-top:1px solid var(--borde);display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.9rem}
.servicio .pie-card .precio{padding:0;margin:0}
.servicio .pie-card .mas{margin:0}
.servicio .quien-card{font-size:.85rem;color:var(--texto-2);margin-top:4px}

/* banda eslogan */
.banda{background:var(--terracota-osc);color:#fff;padding:72px 0;position:relative;overflow:hidden}
.banda p{font-family:var(--serif);font-size:clamp(1.7rem,3.6vw,2.8rem);line-height:1.2;max-width:900px;margin:0 auto;text-align:center;font-style:italic}
.banda p b{font-style:normal;font-weight:600}
.banda::before,.banda::after{content:"";position:absolute;width:300px;height:300px;border:28px solid rgba(255,255,255,.08);border-radius:50%}
.banda::before{left:-120px;top:-150px}.banda::after{right:-110px;bottom:-170px}

/* equipo en portada */
.equipo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:44px}
@media (max-width:820px){.equipo-grid{grid-template-columns:1fr}}
.miembro{background:var(--blanco);border:1px solid var(--borde);border-radius:28px;overflow:hidden;display:flex;flex-direction:column}
.miembro .foto{aspect-ratio:16/11;background:var(--verde-claro);position:relative;overflow:hidden}
.miembro .foto img{width:100%;height:100%;object-fit:cover;object-position:50% 28%}
.miembro .foto .ini{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:5rem;color:var(--verde)}
.miembro .foto .ini svg{position:absolute;width:62%;height:62%;opacity:.25}
.miembro .badge{position:absolute;left:18px;top:18px;background:var(--blanco);color:var(--verde);border-radius:999px;padding:6px 14px;font-size:.82rem;font-weight:600}
.miembro .txt{padding:28px 30px 30px;display:flex;flex-direction:column;flex:1}
.miembro h3{font-size:1.55rem;margin-bottom:2px}
.miembro .rol{color:var(--terracota-osc);font-weight:600;font-size:.95rem;margin-bottom:14px}
.miembro p{color:var(--texto-2)}
.miembro .donde{margin-top:auto}
.miembro .acciones{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.miembro .acciones .btn{padding:10px 18px;min-height:44px;font-size:.93rem}

/* con quién (páginas de terapia) */
.con-quien{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0 8px}
@media (max-width:620px){.con-quien{grid-template-columns:1fr}}
.con-quien .p{display:flex;gap:14px;align-items:center;background:var(--crema);border:1px solid var(--borde);border-radius:18px;padding:14px}
.con-quien img,.con-quien .ini{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:50% 25%;flex:none}
.con-quien .ini{background:var(--verde-claro);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.4rem;color:var(--verde)}
.con-quien b{display:block;color:var(--verde)}
.con-quien span{font-size:.88rem;color:var(--texto-2);line-height:1.4;display:block}

/* galería v2 */
.galeria img{border-radius:22px;transition:transform .3s}
.galeria img:first-child{border-radius:200px 200px 22px 22px}

/* cabecera de página interior v2 */
.cab-pag{position:relative;overflow:hidden}
.cab-pag::after{content:"";position:absolute;right:-140px;top:-200px;width:520px;height:520px;border-radius:50%;background:#EFDCCD;opacity:.5;z-index:-1}
.cab-pag .wrap{position:relative}
.paso{transition:background .2s}
.paso:hover{background:rgba(255,255,255,.1)}
@media (max-width:900px){.frases{grid-template-columns:1fr 1fr}}@media (max-width:560px){.frases{grid-template-columns:1fr}}
.servicios5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
@media (max-width:1100px){.servicios5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){.servicios5{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.servicios5{grid-template-columns:1fr}}
.servicios5 .servicio .top{padding:24px 22px 0}.servicios5 .servicio .pie-card{padding:16px 22px}
.servicios5 h3{font-size:1.18rem}
.equipo-grid.tres{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:980px){.equipo-grid.tres{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.equipo-grid.tres{grid-template-columns:1fr}}
.equipo-grid.tres .miembro .foto{aspect-ratio:1/1}
.equipo-grid.tres .txt{padding:24px}
.equipo-grid.tres h3{font-size:1.35rem}
.persona img{object-position:50% 25%}
.nav a{padding:10px 10px;font-size:.93rem}
/* blog v3 */
.post-card{padding:0;overflow:hidden}
.post-arte{height:150px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.post-arte svg{width:120px;height:120px;position:absolute;right:-18px;bottom:-26px;transform:rotate(-12deg)}
.post-arte svg+span{position:absolute;left:22px;top:18px}
.post-tema{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:rgba(255,255,255,.7);padding:5px 12px;border-radius:999px}
.post-txt{padding:22px 24px 22px;display:flex;flex-direction:column;flex:1}
.post-txt h3{font-size:1.15rem;line-height:1.3}
.post-txt p{font-size:.95rem;color:var(--texto-2)}
.post-meta{margin-top:auto;display:flex;justify-content:space-between;font-size:.83rem;color:var(--texto-2);border-top:1px solid var(--borde);padding-top:12px}
.post-meta span:last-child::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--terracota);margin-right:7px;vertical-align:2px}
.filtros{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.filtros button{font:inherit;font-size:.92rem;padding:9px 16px;border-radius:999px;border:1px solid var(--borde);background:var(--blanco);color:var(--verde);cursor:pointer;min-height:40px}
.filtros button.activo{background:var(--verde);color:#fff;border-color:var(--verde)}
/* foto en cabecera de página */
.cab-pag .split{align-items:center}
.foto-pag img{border-radius:240px 240px 24px 24px;aspect-ratio:4/5;object-fit:cover;width:100%;max-width:440px;margin-left:auto;box-shadow:0 26px 50px -24px rgba(47,74,62,.35)}
.persona img{aspect-ratio:1/1}
.equipo-grid.tres .miembro .foto img{object-position:50% 30%}
/* v4: mapa, reseñas, guía, flotante, equipo responsive */
.mapa{position:relative;border-radius:20px;overflow:hidden;border:1px solid var(--borde);background:#E8E2D6;min-height:320px;margin-top:18px}
.mapa iframe{border:0;width:100%;height:360px;display:block}
.mapa-ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:24px;
 background:repeating-linear-gradient(0deg,transparent 0 46px,rgba(47,74,62,.07) 46px 48px),repeating-linear-gradient(90deg,transparent 0 46px,rgba(47,74,62,.07) 46px 48px),#EAE4D8}
.mapa-ph svg{width:46px;height:46px;margin-bottom:4px}
.mapa-ph b{font-family:var(--serif);font-size:1.25rem;color:var(--verde)}
.mapa-ph span{font-size:.82rem;color:var(--texto-2)}
.mapa-btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:12px}
.mapa-btns .btn{background:var(--blanco);padding:10px 18px;min-height:44px;font-size:.92rem}
.mapa-bloque{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:stretch;margin-top:36px}
.mapa-bloque .mapa{margin:0}
.como-llegar{background:var(--blanco);border:1px solid var(--borde);border-radius:20px;padding:28px;display:flex;flex-direction:column}
.como-llegar ul{list-style:none;padding:0;margin:0 0 20px}.como-llegar li{padding:9px 0;border-bottom:1px solid var(--borde);font-size:.96rem}
.como-llegar .btn{margin-top:auto;align-self:flex-start}
@media (max-width:820px){.mapa-bloque{grid-template-columns:1fr}}
.resenas{background:var(--crema-2)}
.resenas-cab{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.nota-google{display:flex;align-items:center;gap:12px;background:var(--blanco);border:1px solid var(--borde);border-radius:999px;padding:10px 20px;text-decoration:none;color:var(--texto)}
.nota-google b{font-family:var(--serif);font-size:1.6rem;color:var(--verde)}
.nota-google span:last-child{font-size:.88rem;color:var(--texto-2)}
.estrellas{color:#E0A23B;letter-spacing:2px;font-size:1.05rem}
.resenas-grid{columns:3 300px;column-gap:20px;margin-top:36px}
.resena{break-inside:avoid;background:var(--blanco);border:1px solid var(--borde);border-radius:20px;padding:24px;margin:0 0 20px}
.resena blockquote{margin:10px 0 14px;font-family:var(--serif);font-size:1.08rem;line-height:1.5;color:var(--texto)}
.resena figcaption{font-weight:600;color:var(--verde);font-size:.92rem}
.resena figcaption::before{content:"";display:inline-block;width:18px;height:2px;background:var(--terracota);vertical-align:middle;margin-right:10px}
.guia .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.guia-cab p{color:#D5E0DA}
.guia-caja{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:30px}
.guia-p{color:#fff;margin:0 0 12px}.guia-p+.guia-ops{margin-bottom:26px}
.guia-ops{display:flex;flex-wrap:wrap;gap:10px}
.guia-ops button{font:inherit;font-size:.95rem;padding:10px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;cursor:pointer;min-height:44px}
.guia-ops button:hover{background:rgba(255,255,255,.1)}
.guia-ops button.on{background:#fff;color:var(--verde);border-color:#fff}
.guia-tarjeta{background:var(--blanco);color:var(--texto);border-radius:18px;padding:24px;margin-top:4px}
.guia-tarjeta h3{color:var(--verde)}
.guia-tarjeta .kicker{color:var(--terracota-osc)}
.btn-sec-claro{border:2px solid var(--verde);color:var(--verde)}
@media (max-width:900px){.guia .wrap{grid-template-columns:1fr;gap:24px}}
.wa-flotante{position:fixed;right:22px;bottom:22px;z-index:70;display:flex;align-items:center;gap:10px;background:#1F7A4D;color:#fff;text-decoration:none;border-radius:999px;padding:12px 18px 12px 14px;box-shadow:0 14px 30px -10px rgba(0,0,0,.35);font-weight:600}
.wa-flotante svg{width:26px;height:26px}
.wa-flotante:hover{background:#17603C;color:#fff}
@media (max-width:760px){.wa-flotante{display:none}}
/* equipo: en anchos intermedios, tarjetas horizontales (sin huérfanos) */
@media (max-width:980px) and (min-width:641px){
 .equipo-grid.tres{grid-template-columns:1fr}
 .equipo-grid.tres .miembro{flex-direction:row}
 .equipo-grid.tres .miembro .foto{width:240px;flex:none;aspect-ratio:auto}
}
.cab-pag>.wrap>div:only-child .lede{max-width:44em}
/* v5: alineación exacta de las tarjetas del equipo (subgrid) */
@media (min-width:981px){
 .equipo-grid.tres{grid-template-rows:auto}
 .equipo-grid.tres .miembro{display:grid;grid-row:span 6;grid-template-rows:subgrid;row-gap:0}
 .equipo-grid.tres .miembro .txt{display:grid;grid-row:span 5;grid-template-rows:subgrid;row-gap:0;padding:24px 24px 26px}
 .equipo-grid.tres .miembro .txt h3{margin-bottom:2px}
 .equipo-grid.tres .miembro .txt p{margin:0 0 14px}
 .equipo-grid.tres .miembro .txt .rol{margin-bottom:12px}
 .equipo-grid.tres .miembro .donde{margin-top:0;align-self:end}
 .equipo-grid.tres .miembro .acciones{align-self:end}
}
/* respiración */
.respira{display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center;background:var(--verde);color:#EAF0EC;border-radius:24px;padding:32px;margin:28px 0}
.respira h3{color:#fff;margin-bottom:6px}
.respira p{color:#D5E0DA;margin:0 0 14px;font-size:.97rem}
.circulo{width:170px;height:170px;border-radius:50%;background:rgba(240,185,163,.18);display:flex;align-items:center;justify-content:center;position:relative}
.circulo::before{content:"";position:absolute;inset:18px;border-radius:50%;background:#C8613F;transform:scale(.55);transition:transform 4s ease-in-out}
.circulo.in::before{transform:scale(1)}
.circulo.hold::before{transform:scale(1)}
.circulo.out::before{transform:scale(.55)}
.circulo span{position:relative;font-family:var(--serif);font-size:1.15rem;color:#fff;text-align:center}
.respira .btn{background:#fff;color:var(--verde)}
@media (max-width:640px){.respira{grid-template-columns:1fr;justify-items:center;text-align:center}}
@media (prefers-reduced-motion:reduce){.circulo::before{transition:none}}
.miembro .acciones{flex-wrap:nowrap}
.miembro .acciones .btn{flex:1;justify-content:center;white-space:nowrap;padding:10px 12px}
/* herramientas */
.como-estas{background:var(--blanco)}
.emo-ops{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:28px}
.emo-ops button{font:inherit;padding:12px 20px;border-radius:999px;border:1px solid var(--borde);background:var(--crema);color:var(--verde);cursor:pointer;min-height:46px;font-weight:500;transition:transform .15s}
.emo-ops button:hover{transform:translateY(-2px);border-color:var(--terracota)}
.emo-ops button.on{background:var(--terracota-osc);color:#fff;border-color:var(--terracota-osc)}
.emo-res{max-width:640px;margin:22px auto 0}
.emo-tarjeta{background:var(--crema);border-radius:20px;padding:24px 26px;text-align:left;animation:sube .35s ease}
.emo-tarjeta p{font-family:var(--serif);font-size:1.15rem;line-height:1.5;color:var(--texto)}
@keyframes sube{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tierra,.cartas,.rueda,.voltea{background:var(--blanco);border:1px solid var(--borde);border-radius:24px;padding:28px;margin:28px 0}
.section.alt .prosa .tierra,.section.alt .prosa .cartas,.section.alt .prosa .rueda,.section.alt .prosa .voltea{background:var(--crema)}
.tierra h3,.cartas h3,.rueda h3,.voltea h3{margin-bottom:6px}
.tierra p,.cartas p,.rueda p,.voltea>p{color:var(--texto-2);font-size:.97rem}
.tierra-paso{display:none;gap:18px;align-items:center;background:var(--verde);color:#fff;border-radius:18px;padding:22px;animation:sube .35s ease}
.tierra-paso.on{display:flex}
.tierra-paso .num{font-family:var(--serif);font-size:3.2rem;line-height:1;color:#F0B9A3;flex:none;width:56px;text-align:center}
.tierra-paso b{font-size:1.15rem}.tierra-paso p{color:#D5E0DA;margin:4px 0 0}
.tierra-fin{background:var(--verde-claro);color:var(--verde);border-radius:18px;padding:20px;font-weight:500}
.tierra-ctrl{display:flex;justify-content:space-between;align-items:center;margin-top:16px}
.puntos{display:flex;gap:8px}.puntos i{width:10px;height:10px;border-radius:50%;background:var(--borde)}.puntos i.on{background:var(--terracota)}
.cartas{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.carta{background:var(--terracota-osc);color:#fff;border-radius:20px;padding:30px 26px;min-height:190px;display:flex;flex-direction:column;justify-content:center;position:relative;box-shadow:8px 8px 0 var(--terracota-claro)}
.carta p{font-family:var(--serif);font-size:1.3rem;line-height:1.35;color:#fff!important;margin:0}
.carta-n{position:absolute;top:14px;right:18px;font-size:.8rem;opacity:.75}
.carta.gira{animation:gira .45s ease}
@keyframes gira{0%{transform:rotateY(90deg)}100%{transform:none}}
@media (max-width:700px){.cartas{grid-template-columns:1fr}}
.rueda{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}
.rueda-sl{display:grid;gap:12px;margin-top:14px}
.rueda-sl label{display:grid;grid-template-columns:130px 1fr 26px;align-items:center;gap:12px;font-size:.93rem}
.rueda-sl input{accent-color:var(--terracota-osc);width:100%}
.rueda-sl b{color:var(--verde);text-align:right}
.rueda-vis svg{width:100%;max-width:300px;display:block;margin:0 auto}
.rueda-consejo{font-size:.95rem;text-align:center;color:var(--texto)!important;margin-top:8px}
@media (max-width:760px){.rueda{grid-template-columns:1fr}}
.voltea-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
@media (max-width:760px){.voltea-grid{grid-template-columns:1fr 1fr}}@media (max-width:480px){.voltea-grid{grid-template-columns:1fr}}
.vt{font:inherit;position:relative;min-height:150px;border:0;padding:0;background:none;cursor:pointer;perspective:900px;text-align:left}
.vt .cara{position:absolute;inset:0;border-radius:18px;padding:18px;display:flex;flex-direction:column;justify-content:center;backface-visibility:hidden;transition:transform .5s;font-family:var(--serif);font-size:1.05rem;line-height:1.35}
.vt .cara small{font-family:var(--sans);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-bottom:8px}
.vt .a{background:#E9E2D6;color:var(--texto)}.vt .a small{color:var(--texto-2)}
.vt .b{background:var(--verde);color:#fff;transform:rotateY(180deg)}.vt .b small{color:#F0B9A3}
.vt.girada .a{transform:rotateY(-180deg)}.vt.girada .b{transform:none}
.aviso-crisis{background:var(--terracota-claro);color:#6E3320;border-radius:14px;padding:14px 18px;font-size:.93rem;margin-top:28px}
.indice-rec{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.indice-rec a{background:var(--blanco);border:1px solid var(--borde);border-radius:999px;padding:8px 16px;text-decoration:none;color:var(--verde);font-size:.92rem;font-weight:500}
.prosa.ancha{max-width:900px}
@media (prefers-reduced-motion:reduce){.carta.gira,.emo-tarjeta,.tierra-paso{animation:none}.vt .cara{transition:none}}
/* check-in v2 */
.ce{max-width:760px;margin:34px auto 0;background:var(--crema);border:1px solid var(--borde);border-radius:26px;padding:30px 30px 18px;position:relative}
.ce-barra{height:6px;border-radius:6px;background:var(--borde);overflow:hidden;margin-bottom:24px}
.ce-barra i{display:block;height:100%;width:25%;background:var(--terracota);transition:width .35s ease}
.ce-paso,.ce-final{display:none}.ce-paso.on,.ce-final.on{display:block;animation:sube .35s ease}
.ce-q{font-family:var(--serif);font-size:1.4rem;color:var(--verde);text-align:center;margin-bottom:18px}
.ce-q span{display:block;font-family:var(--sans);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--terracota-osc);font-weight:600;margin-bottom:6px}
.ce .emo-ops{margin-top:0}
.ce .emo-ops button{background:var(--blanco)}
.ce-slider{display:grid;grid-template-columns:auto 1fr auto 56px;gap:14px;align-items:center;max-width:520px;margin:0 auto}
.ce-slider input{accent-color:var(--terracota-osc);width:100%}
.ce-slider output{font-family:var(--serif);font-size:2rem;color:var(--terracota-osc);text-align:center}
.ce-escala{display:flex;justify-content:space-between;max-width:470px;margin:4px auto 0;color:var(--texto-2)}
.ce-nav{display:flex;justify-content:flex-start;margin-top:14px;min-height:30px}
.ce-atras,.ce-otra{font:inherit;background:none;border:0;color:var(--texto-2);cursor:pointer;padding:6px 0;font-size:.92rem;text-decoration:underline;text-underline-offset:3px}
.ce-res{text-align:left}
.ce-resumen{font-family:var(--serif);font-size:1.25rem;line-height:1.5;color:var(--texto)}
.ce-reco{background:var(--blanco);border-left:0;border-radius:16px;padding:18px 20px;margin:16px 0;border:1px solid var(--borde)}
.ce-reco b{color:var(--verde);display:block;margin-bottom:4px}
.ce-reco p{margin:0 0 6px}
.nivel-alto .ce-reco{border-color:var(--terracota);box-shadow:inset 4px 0 0 var(--terracota)}
.nivel-medio .ce-reco{box-shadow:inset 4px 0 0 #E0A23B}
.nivel-leve .ce-reco{box-shadow:inset 4px 0 0 var(--verde-2)}
.ce-res .ce-otra{margin-top:10px}
/* rueda v2 */
.rueda-vis{position:relative}
.rueda-total{text-align:center;margin-top:4px}.rueda-total b{font-family:var(--serif);font-size:2rem;color:var(--verde)}.rueda-total span{color:var(--texto-2);margin-left:4px}
.rueda-res{grid-column:1/-1;border-top:1px solid var(--borde);padding-top:18px}
.rueda-res h4{font-family:var(--serif);font-size:1.25rem;color:var(--verde);margin:12px 0 6px}.rueda-res h4 small{font-family:var(--sans);font-size:.85rem;color:var(--texto-2);font-weight:400}
.rueda-res p,.rueda-res li{color:var(--texto)!important;font-size:.96rem}
.rueda-res ul{padding-left:1.1em;margin:4px 0 8px}
.rueda-sub{font-weight:600;color:var(--verde)!important;margin:8px 0 2px}
.rueda-chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{font-size:.82rem;border-radius:999px;padding:5px 12px;font-weight:500}
.chip.ok{background:var(--verde-claro);color:var(--verde)}.chip.mid{background:#F2E6C9;color:#7A5810}.chip.low{background:var(--terracota-claro);color:#8E3F24}
/* menú desplegable */
.desplegable{position:relative}
.desp-btn{display:inline-flex!important;align-items:center;gap:4px}
.desp-btn svg{width:12px;height:12px;transition:transform .2s}
.desp-menu{position:absolute;left:50%;top:100%;transform:translate(-50%,8px);background:var(--blanco);border:1px solid var(--borde);border-radius:18px;padding:10px;min-width:310px;box-shadow:0 24px 50px -20px rgba(47,74,62,.35);opacity:0;visibility:hidden;transition:opacity .15s,transform .15s;z-index:80}
.desplegable::after{content:"";position:absolute;left:0;right:0;top:100%;height:12px}
.desplegable:hover .desp-menu,.desplegable:focus-within .desp-menu{opacity:1;visibility:visible;transform:translate(-50%,4px)}
.desplegable:hover .desp-btn svg,.desplegable:focus-within .desp-btn svg{transform:rotate(180deg)}
.desp-menu a{display:block;padding:10px 14px!important;border-radius:12px}
.desp-menu a b{display:block;color:var(--verde);font-weight:600;font-size:.95rem}
.desp-menu a span{display:block;font-size:.83rem;color:var(--texto-2);font-weight:400}
.desp-menu a:hover{background:var(--crema)}
.desp-menu .ver-todas{border-top:1px solid var(--borde);margin-top:6px;border-radius:0 0 12px 12px;color:var(--terracota-osc)!important;font-weight:600;font-size:.9rem}
.menu-movil .panel a.sub{padding-left:28px;font-size:.95rem;color:var(--texto-2)}
.h3{font-size:1.18rem;margin:0 0 .4em}
.hub{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.hub{grid-template-columns:1fr 1fr}}@media (max-width:560px){.hub{grid-template-columns:1fr}}
.ce-donde{margin-top:14px;padding-top:14px;border-top:1px solid var(--borde)}
.ce-donde>span{font-weight:600;color:var(--verde);font-size:.95rem}
.ce-donde .emo-ops{justify-content:flex-start;margin:10px 0 8px}
.ce-donde .emo-ops button{padding:8px 16px;min-height:40px;font-size:.92rem}
.ce-quien{font-size:.95rem;margin:0}
/* reformula + carta duelo */
.refo,.carta-duelo{background:var(--blanco);border:1px solid var(--borde);border-radius:24px;padding:28px;margin:28px 0}
.section.alt .prosa .refo,.section.alt .prosa .carta-duelo{background:var(--crema)}
.refo h3,.carta-duelo h3{margin-bottom:6px}
.refo-cab p,.cd-cab p{color:var(--texto-2);font-size:.97rem}
.refo-barra{height:5px;border-radius:5px;background:var(--borde);overflow:hidden;margin:6px 0 18px}.refo-barra i{display:block;height:100%;width:25%;background:var(--terracota);transition:width .35s}
.refo-paso,.cd-paso{display:none}.refo-paso.on,.cd-paso.on{display:block;animation:sube .3s ease}
.refo textarea,.carta-duelo textarea{width:100%;font:inherit;padding:12px 14px;border:1px solid var(--borde);border-radius:12px;background:#fff;color:var(--texto);margin:8px 0 14px;resize:vertical}
.refo textarea:focus,.carta-duelo textarea:focus{outline:2px solid var(--terracota);outline-offset:1px}
.refo label{display:block;color:var(--texto)}
.refo-l{font-size:.93rem;margin-top:4px}.refo-l output{font-family:var(--serif);font-size:1.3rem;color:var(--terracota-osc)}
.refo input[type=range]{width:100%;accent-color:var(--terracota-osc);margin:4px 0 16px}
.refo-err{color:#A1341B!important;font-size:.88rem;margin:0 0 10px;min-height:1px}
.refo-trampas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 18px}
@media (max-width:560px){.refo-trampas{grid-template-columns:1fr}}
.refo-trampas button{font:inherit;text-align:left;background:#fff;border:1px solid var(--borde);border-radius:14px;padding:12px 14px;cursor:pointer}
.refo-trampas button b{display:block;color:var(--verde);font-size:.95rem}.refo-trampas button span{font-size:.84rem;color:var(--texto-2)}
.refo-trampas button.on{border-color:var(--terracota-osc);background:var(--terracota-claro)}
.refo-preg{background:var(--verde);color:#EAF0EC;border-radius:16px;padding:18px 18px 18px 36px;margin:10px 0 18px}.refo-preg li{margin:6px 0}
.refo-comp{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:stretch;margin-bottom:14px}
.refo-comp>div:not(.flecha){border-radius:16px;padding:16px}.refo-comp small{font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.refo-comp p{font-family:var(--serif);font-size:1.08rem;margin:6px 0 0;line-height:1.45}
.refo-comp .antes{background:#E9E2D6;color:var(--texto-2)}.refo-comp .antes p{color:var(--texto-2)!important;text-decoration:line-through;text-decoration-color:rgba(164,76,46,.5)}
.refo-comp .despues{background:var(--verde);color:#fff}.refo-comp .despues small{color:#F0B9A3}.refo-comp .despues p{color:#fff!important}
.refo-comp .flecha{align-self:center;font-size:1.6rem;color:var(--terracota)}
@media (max-width:620px){.refo-comp{grid-template-columns:1fr}.refo-comp .flecha{transform:rotate(90deg);justify-self:center}}
.cd-paso label{font-family:var(--serif);font-size:1.3rem;color:var(--verde);display:block}
.cd-n{display:block;font-family:var(--sans);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--terracota-osc);font-weight:600;margin-bottom:4px}
.cd-paso .nota{margin:4px 0 0}
.cd-ctrl{display:flex;justify-content:space-between;align-items:center}
.cd-atras{font:inherit;background:none;border:0;color:var(--texto-2);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.cd-hoja{background:#FFFDF7;border:1px solid var(--borde);border-radius:6px;padding:30px 32px;margin:6px 0 16px;box-shadow:0 18px 36px -24px rgba(47,74,62,.4);
 background-image:repeating-linear-gradient(transparent 0 31px,rgba(47,74,62,.08) 31px 32px);line-height:32px}
.cd-hoja p{font-family:var(--serif);font-size:1.12rem;line-height:32px;margin:0 0 16px;color:var(--texto)!important}
.cd-hoja i{color:var(--terracota-osc)}
.cd-saludo{font-size:1.25rem!important}
/* redes */
.redes{display:flex;gap:10px;margin-top:16px}
.redes a{width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:#F0C2AF}
.redes a:hover{background:rgba(255,255,255,.08);color:#fff}
.redes svg{width:20px;height:20px}
.redes-contacto{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px}
.redes-contacto span{color:var(--texto-2);font-size:.93rem}
.redes-contacto .btn{padding:10px 18px;min-height:44px;font-size:.93rem}
/* artículo */
.art-cab{max-width:900px;padding-top:28px;padding-bottom:28px}
.art-cab h1{font-size:clamp(2rem,4.2vw,3.1rem)}
.art-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;color:var(--texto-2);font-size:.92rem;margin-top:14px}
.art-meta img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.art-meta b{color:var(--verde)}
.art-banda{height:180px;position:relative;overflow:hidden;margin-bottom:56px}
.art-banda svg{position:absolute;width:340px;height:340px;right:8%;top:-80px;transform:rotate(-14deg)}
.art-cuerpo{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}
@media (max-width:920px){.art-cuerpo{grid-template-columns:1fr}}
.art-texto{font-size:1.08rem;line-height:1.8}
.art-texto>p:first-child{font-family:var(--serif);font-size:1.3rem;line-height:1.55;color:var(--verde)}
.art-texto h2{margin-top:1.6em}.art-texto h3{margin-top:1.4em;font-size:1.22rem}
.art-texto ul{padding-left:1.2em}.art-texto li{margin-bottom:.35em}
.art-texto a{font-weight:500}
.art-aside .aside{top:110px}.art-aside .btn{margin-top:8px}
.autor{display:flex;gap:20px;align-items:center;background:var(--crema-2);border-radius:20px;padding:22px;margin:56px 0 72px;max-width:820px}
.autor img{width:96px;height:96px;border-radius:50%;object-fit:cover;flex:none}
.autor p{margin:4px 0 6px;color:var(--texto-2);font-size:.95rem}
.legal-txt{font-size:.98rem}.legal-txt h2{font-size:1.35rem;margin-top:1.4em}
.art-cab{max-width:var(--max)}.art-cab h1{max-width:900px}
.art-texto .respira{margin:24px 0}

@media (max-width:560px){.galeria{grid-template-columns:1fr}.galeria img{height:240px}}

/* ===== v6: móvil ===== */
.flota-movil{display:none}
@media (max-width:760px){
  .barra-movil{display:none!important}
  .flota-movil{display:flex;align-items:center;gap:10px;position:fixed;left:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:70}
  .flota-movil a{display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;box-shadow:0 10px 24px -8px rgba(0,0,0,.4)}
  .flota-movil svg{width:24px;height:24px}
  .fm-wa{position:relative;background:#1F7A4D;border-radius:22px 22px 22px 6px;padding:11px 14px 11px 12px;gap:8px;font-weight:600;font-size:.92rem}
  .fm-tel{width:46px;height:46px;border-radius:50%;background:var(--terracota,#C8613F)}
  .fm-tel svg{width:21px;height:21px}
  .pie{padding-bottom:90px}
  .menu-movil .panel{max-height:calc(100vh - 96px);overflow-y:auto;-webkit-overflow-scrolling:touch}
  .menu-movil .sub-ter summary{list-style:none;cursor:pointer;padding:12px 14px;border-radius:10px;font-weight:600;color:var(--texto);display:flex;justify-content:space-between;align-items:center}
  .menu-movil .sub-ter summary::-webkit-details-marker{display:none}
  .menu-movil .sub-ter summary::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-4px 4px 0 0;transition:transform .2s}
  .menu-movil .sub-ter[open] summary::after{transform:rotate(-135deg);margin-top:4px}
  .menu-movil .sub-ter[open]{background:var(--crema);border-radius:12px}
  /* foto principal más contenida */
  .hero .wrap{gap:28px}
  .hero-foto{max-width:300px}
  .hero-foto img{aspect-ratio:1/1;object-position:50% 28%}
}
@media (max-width:420px){.fm-wa span{display:none}.fm-wa{width:50px;height:50px;padding:0}}
.menu-movil .sub-ter a{display:block}
.menu-movil .sub-ter{padding-bottom:4px}
@media (max-width:760px){.flota-movil{flex-direction:column-reverse;align-items:center;gap:10px}}
.obl{color:var(--terracota-osc);font-weight:700}.opc{font-weight:400;color:var(--texto-2);font-size:.9em}.nota-obl{font-size:.85rem;color:var(--texto-2);margin:-4px 0 0}

.flota-movil .fm-tel{display:none!important}
