:root{--fondo:#f7f4ec;--tinta:#27382e;--verde:#35483b;--suave:#e6e9dd;--linea:#d3d7c8;--serif:Georgia,serif}
*{box-sizing:border-box}
body{margin:0;background:var(--fondo);color:var(--tinta);font:1rem/1.65 system-ui,sans-serif}
a{color:inherit;text-underline-offset:.26em}
a:focus-visible,summary:focus-visible{outline:3px solid #a06037;outline-offset:4px}
.salto{position:absolute;left:.5rem;top:-5rem;background:white;padding:.5rem;z-index:2}
.salto:focus{top:.5rem}
.ancho{width:min(1200px,calc(100% - 4rem));margin-inline:auto}
.cabecera{border-bottom:1px solid var(--linea)}
.barra,.pie{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0}
.marca,.pie span{font-size:.83rem;font-weight:650;letter-spacing:.15em;text-decoration:none}
.marca{display:flex;align-items:center;gap:.65rem}.marca img{width:4rem;height:4rem}.marca small{display:block;font-size:.61rem;font-weight:600;margin-top:.05rem}
nav{display:flex;gap:clamp(1rem,3vw,2.5rem);font-size:.9rem}
nav a{text-decoration:none}
nav a:hover{text-decoration:underline}
.boton{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;padding:.72rem 1.15rem;border:1px solid var(--verde);border-radius:2rem;background:var(--verde);color:white;font-size:.89rem;font-weight:650;text-decoration:none}
.boton:hover{background:#24362b;color:white}
.boton.claro{background:transparent;color:var(--verde)}
.boton.claro:hover{background:var(--suave)}
.portada{display:grid;grid-template-columns:.83fr 1.17fr;gap:clamp(2rem,5vw,5rem);align-items:center;padding:clamp(2.75rem,7vw,6rem) 0 3rem}
.etiqueta{font-size:.72rem;font-weight:750;letter-spacing:.15em;color:var(--verde);margin:0 0 .9rem}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04;margin:0 0 1rem}
h1{font-size:clamp(3.4rem,6.3vw,6.8rem);letter-spacing:-.064em}
h1 em{display:block;color:var(--verde);font-weight:400}
h2{font-size:clamp(2.55rem,4.8vw,4.65rem);letter-spacing:-.055em}
h3{font-size:1.75rem;letter-spacing:-.03em}
.introduccion>p:not(.etiqueta){font-size:1.1rem;max-width:35ch}
.acciones{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.6rem;font-size:.9rem;font-weight:650}
figure{margin:0}
img{display:block;width:100%;height:auto}
.portada-foto img{border-radius:12rem 12rem .45rem .45rem / 5rem 5rem .45rem .45rem;aspect-ratio:1.26;object-fit:cover}
figcaption{color:#505a4c;font-size:.73rem;margin-top:.55rem}
.portada-foto figcaption{text-align:right}
.bloque{padding:clamp(3rem,7vw,6rem) 0}
.metodo{background:var(--verde);color:var(--fondo)}.metodo .etiqueta{color:#e6e9dd}
.titular>p:not(.etiqueta){max-width:57ch}
.principios{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0}
.principios article{background:#f3f4eb;color:var(--tinta);border-top:2px solid #acb9a4;padding:1.4rem}
.principios article span{display:block;color:#596753;font-size:.72rem;letter-spacing:.12em;margin-bottom:.6rem}
.principios article p{margin-bottom:0}
.resenas{margin-bottom:0;font-size:.9rem}
.primera{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:clamp(2rem,6vw,6rem)}
.primera .boton{margin-top:.5rem}
.preguntas{border-top:1px solid var(--linea)}
details{border-bottom:1px solid var(--linea);padding:1rem 0}
summary{cursor:pointer;font-weight:650}
details p{margin:.65rem 0 0}
.ubicacion{background:var(--suave)}
.visita{display:grid;grid-template-columns:1fr 1fr .55fr;align-items:start;gap:clamp(1.25rem,4vw,3.5rem)}
address{font-style:normal}
.horario{padding:1.4rem;background:#f7f7f0;border-radius:.35rem}
.horario dl>div{display:flex;justify-content:space-between;gap:.75rem;padding:.55rem 0;border-bottom:1px solid var(--linea)}
dt{font-weight:600}
dd{margin:0;text-align:right}
.horario p,.pie a{font-size:.83rem}
.rotulo{align-self:start;width:min(100%,12.5rem)}
footer{border-top:1px solid var(--linea)}
@media(max-width:900px){.portada{gap:1.75rem}.visita{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.ancho{width:calc(100% - 2rem)}.barra{flex-wrap:wrap}.barra nav{order:3;width:100%;border-top:1px solid var(--linea);padding-top:.6rem;gap:1.1rem}.portada,.primera,.visita,.principios{grid-template-columns:1fr}.principios{gap:.55rem}.principios article{padding:1rem}.portada-foto img{aspect-ratio:1.48}.pie{align-items:start;flex-direction:column}}

