/* Páginas de contenido (tartas personalizadas, cumpleaños, temáticas, comunión, bodas).
   Reutiliza variables, nav, botones, tarjetas y pie de vac.css. */

/* Salto al contenido: invisible hasta que se llega con el teclado */
.saltar{position:absolute;left:-9999px;top:0;z-index:100;background:var(--fucsia);color:#fff;
  padding:12px 20px;border-radius:0 0 12px 0;font-family:var(--sans);font-weight:600;text-decoration:none}
.saltar:focus{left:0}

/* Foco visible en todo lo que se puede recorrer con el teclado */
a:focus-visible,button:focus-visible,summary:focus-visible{
  outline:3px solid var(--fucsia);outline-offset:3px;border-radius:6px}

/* El h3 que precede a la tabla ya la titula visualmente: el caption es para
   quien navega con lector de pantalla y llega a la tabla sin ese contexto. */
.tabla-porciones caption{position:absolute;width:1px;height:1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
a.tarta__pide{text-decoration:none}
a.tarta__pide:hover{text-decoration:underline}

.pag-hero{background:radial-gradient(120% 90% at 80% 10%,var(--rosa-pal),var(--crema) 60%);
  padding:120px 0 64px}
.pag-hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.pag-hero h1{font-family:var(--serif);font-size:clamp(2.1rem,4.6vw,3.4rem);line-height:1.08;
  color:var(--choco);margin:14px 0 0}
.pag-hero h1 em{display:block;font-family:var(--script);font-style:normal;color:var(--fucsia);
  font-size:.92em;margin-top:.12em}
.pag-hero__sub{font-size:1.08rem;color:var(--choco-2);margin:18px 0 26px;max-width:52ch}
.pag-hero__foto{border-radius:26px;overflow:hidden;box-shadow:var(--sombra);aspect-ratio:4/3}
.pag-hero__foto img{width:100%;height:100%;object-fit:cover}

.miga{font-size:.86rem;color:var(--choco-2)}
.miga a{color:var(--choco-2);text-decoration:underline}
.miga a:hover{color:var(--fucsia)}

.bloque{padding:64px 0}
.bloque--crema{background:var(--crema-2)}
.bloque__grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.bloque h2{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.1rem);color:var(--choco);
  line-height:1.2;margin:0 0 16px}
.bloque h3{font-family:var(--serif);font-size:1.22rem;color:var(--choco);margin:26px 0 10px}
.bloque p{color:var(--choco-2);line-height:1.75;margin:0 0 16px;max-width:68ch}
.bloque ul{color:var(--choco-2);line-height:1.75;margin:0 0 16px;padding-left:22px;max-width:68ch}
.bloque li{margin-bottom:8px}
.bloque strong{color:var(--choco)}
.bloque a{color:var(--fucsia);text-decoration:underline}

.tabla-porciones{width:100%;border-collapse:collapse;margin:8px 0 20px;font-size:.97rem}
.tabla-porciones th,.tabla-porciones td{padding:12px 14px;text-align:left;
  border-bottom:1px solid rgba(42,21,24,.1)}
.tabla-porciones th{font-family:var(--sans);font-weight:600;color:var(--choco);
  background:var(--rosa-pal)}
.tabla-porciones td{color:var(--choco-2)}
.tabla-porciones tr:last-child td{border-bottom:0}

/* el nav es fijo: sin esto, al saltar a un ancla el titular queda tapado */
.bloque[id],.cierre[id]{scroll-margin-top:96px}

.faq{max-width:820px;margin:0 auto}
.faq details{background:#fff;border-radius:16px;box-shadow:0 8px 24px rgba(42,21,24,.07);
  margin-bottom:14px;overflow:hidden}
.faq summary{cursor:pointer;padding:18px 22px;font-weight:600;color:var(--choco);
  font-size:1.02rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--fucsia);font-size:1.4rem;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq details>div{padding:0 22px 20px;color:var(--choco-2);line-height:1.7}

.cierre{background:linear-gradient(160deg,var(--rosa-pal),var(--crema-2));padding:64px 0;
  text-align:center}
.cierre h2{font-family:var(--serif);font-size:clamp(1.6rem,3.2vw,2.3rem);color:var(--choco);
  margin:0 0 12px}
.cierre p{color:var(--choco-2);max-width:56ch;margin:0 auto 26px;line-height:1.7}

.otras{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:8px}
.otras a{display:block;background:#fff;border-radius:18px;padding:20px 22px;
  box-shadow:0 8px 24px rgba(42,21,24,.07);transition:.25s;text-decoration:none}
.otras a:hover{transform:translateY(-4px);box-shadow:var(--sombra-rosa)}
.otras b{display:block;font-family:var(--serif);color:var(--choco);font-size:1.08rem;margin-bottom:6px}
.otras span{color:var(--choco-2);font-size:.92rem;line-height:1.5}

@media (max-width:900px){
  .pag-hero{padding:100px 0 48px}
  .pag-hero__grid,.bloque__grid{grid-template-columns:1fr;gap:28px}
  .pag-hero__foto{order:-1}
  .bloque{padding:48px 0}
}
