@font-face{font-family:'Playfair';src:url(/fonts/playfair-display-latin-400-normal.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Playfair';src:url(/fonts/playfair-display-latin-500-normal.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Playfair';src:url(/fonts/playfair-display-latin-400-italic.woff2) format('woff2');font-style:italic;font-display:swap}
@font-face{font-family:'Cormorant';src:url(/fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Cormorant';src:url(/fonts/cormorant-garamond-latin-500-italic.woff2) format('woff2');font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:'Cormorant';src:url(/fonts/cormorant-garamond-latin-700-normal.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Cinzel';src:url(/fonts/cinzel-latin-400-normal.woff2) format('woff2');font-display:swap}
:root{color-scheme:dark;--fondo:#0c1a10;--texto:#efe6d6;--suave:#c9d9c5;--crema:#EAE3D2;--crema-c:#F2E3C6;--champan:#E6C687;--oro:#c9a45c;--oro-claro:#e9d39a;--linea:rgba(201,164,92,.32);--panel:rgba(20,40,27,.72)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;color:var(--texto);background:radial-gradient(120% 70% at 50% 0%,#1f3d2a 0%,#13271b 45%,#0c1a10 100%) fixed var(--fondo);
 font:500 1.22rem/1.7 'Cormorant',Georgia,serif;overflow-x:hidden}
a{color:var(--oro-claro);text-underline-offset:3px;text-decoration-color:rgba(233,211,154,.45)}
a:hover{text-decoration-color:currentColor}
.envoltura{max-width:44rem;margin:0 auto;padding:0 16px}
.cabecera{border-bottom:1px solid var(--linea)}
.cabecera .envoltura{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;align-items:baseline;justify-content:space-between;padding-top:1.1rem;padding-bottom:1rem}
.marca{font-family:'Playfair',Georgia,serif;font-size:1.35rem;color:var(--texto);text-decoration:none}
.cabecera nav{display:flex;flex-wrap:wrap;gap:.2rem 1rem;font-family:'Cinzel',serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}
.cabecera nav a{color:var(--oro);text-decoration:none}
.migas{font-size:.95rem;color:var(--suave);margin:1.6rem 0 0}
.migas a{color:var(--suave)}
h1,h2,h3{font-family:'Playfair',Georgia,serif;font-weight:500;line-height:1.2;color:#f4ecdc}
h1{font-size:clamp(2rem,6vw,2.8rem);margin:.6rem 0 .8rem}
h2{font-size:1.6rem;margin:2.4rem 0 .6rem}
h3{font-size:1.25rem;margin:1.6rem 0 .3rem}
.bajada{font-style:italic;color:var(--crema-c);font-size:1.35rem;margin:0 0 .6rem}
.datos{font-family:'Cinzel',serif;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--oro)}
figure{margin:1.8rem 0}
figure img{display:block;width:100%;max-width:22rem;height:auto;margin:0 auto;border-radius:10px;border:1px solid var(--linea);box-shadow:0 18px 40px rgba(0,0,0,.35)}
figcaption{text-align:center;font-size:.95rem;color:var(--suave);margin-top:.6rem;font-style:italic}
article p,article li{color:var(--crema)}
article ul,article ol{padding-left:1.4rem}
article li{margin:.3rem 0}
article li::marker{color:var(--oro)}
.nota{border-left:2px solid var(--oro);padding:.4rem 0 .4rem 1rem;color:var(--suave);font-style:italic}
.tabla{overflow-x:auto;margin:1rem 0}
table{border-collapse:collapse;width:100%;min-width:30rem;font-size:1.05rem}
th,td{border-bottom:1px solid var(--linea);padding:.55rem .6rem;text-align:left;vertical-align:top}
thead th{font-family:'Playfair',serif;font-weight:500;color:var(--oro-claro)}
tbody th{font-weight:700;color:var(--suave)}
.invitacion{display:grid;grid-template-columns:7.5rem 1fr;gap:1.2rem;align-items:center;margin:3rem 0 1rem;padding:1.3rem;border:1px solid rgba(230,198,135,.75);border-radius:16px;background:linear-gradient(135deg,rgba(230,198,135,.13),rgba(20,40,27,.78) 55%);box-shadow:0 0 0 4px rgba(230,198,135,.06),0 18px 40px rgba(0,0,0,.28)}
.invitacion .sobretitulo{display:block;font-family:'Cinzel',serif;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--champan);margin-bottom:.3rem}
.invitacion.destacada{margin:1.8rem 0 2.4rem;grid-template-columns:9.5rem 1fr}
.invitacion img{width:100%;height:auto;border-radius:8px}
.invitacion h2{margin:0 0 .3rem;font-size:1.35rem}
.invitacion p{margin:0 0 .8rem;font-size:1.08rem;color:var(--crema)}
.boton{display:inline-block;padding:.6rem 1.3rem;border-radius:999px;background:#e8e4f1;color:#1d3826;font-weight:700;text-decoration:none;font-size:1.02rem}
.boton.secundario{background:transparent;color:var(--oro-claro);border:1px solid var(--linea)}
.acciones{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.boton{text-align:center}
@media (max-width:520px){.invitacion,.invitacion.destacada{grid-template-columns:1fr}.invitacion img{max-width:9rem}}
.otras{margin:2.6rem 0 0}
.rejilla{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
@media (max-width:640px){.rejilla{grid-template-columns:1fr}}
.tarjeta{height:100%}
.tarjeta a{display:flex;flex-direction:column;gap:.35rem;height:100%;padding:1.15rem 1.2rem 1.1rem;border:1px solid var(--linea);border-radius:14px;text-decoration:none;
 background:linear-gradient(160deg,rgba(31,61,42,.55),rgba(14,28,19,.75));transition:border-color .2s,transform .2s,background .2s}
.tarjeta a:hover,.tarjeta a:focus-visible{border-color:rgba(230,198,135,.7);transform:translateY(-2px);background:linear-gradient(160deg,rgba(42,74,52,.6),rgba(16,32,22,.8))}
.tarjeta .cabeza{display:flex;align-items:center;gap:.7rem}
.tarjeta svg{flex:none;width:2.3rem;height:2.3rem;color:var(--champan)}
.etiqueta{display:inline-block;font-family:'Cinzel',serif;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--champan);border:1px solid rgba(230,198,135,.45);border-radius:999px;padding:.18rem .6rem}
.tarjeta strong{font-family:'Playfair',serif;font-weight:500;color:#f6eedd;font-size:1.18rem;line-height:1.25;margin-top:.2rem}
.tarjeta span.desc{color:var(--crema);font-size:1.02rem;line-height:1.5}
.tarjeta em.leer{margin-top:auto;padding-top:.4rem;font-style:normal;color:var(--oro-claro);font-size:.98rem}
.tarjeta.ancha{grid-column:1/-1}
.tarjeta.herramienta a{border-style:dashed;background:rgba(20,40,27,.45)}
.encabezado{margin:1.2rem 0 2rem;padding:1.5rem 1.5rem 1.3rem;border:1px solid var(--linea);border-radius:16px;background:linear-gradient(160deg,rgba(31,61,42,.55),rgba(14,28,19,.75))}
.encabezado .cabeza{display:flex;align-items:center;gap:.7rem}
.encabezado svg{flex:none;width:2.3rem;height:2.3rem;color:var(--champan)}
.encabezado h1{margin:.5rem 0 .6rem;font-size:clamp(1.8rem,5vw,2.3rem)}
.encabezado .bajada{margin-bottom:.5rem}
.encabezado .datos{margin:0}
@media (max-width:520px){.encabezado{padding:1.2rem 1.1rem 1.1rem}}
.indice-titulo{font-size:1.5rem;margin:2.2rem 0 1rem}
.pie{margin-top:3.5rem;padding:2rem 0 2.4rem;border-top:1px solid var(--linea);text-align:center;color:var(--suave);font-size:1rem}
.pie p{margin:.2rem 0}
.pie .firma{font-family:'Playfair',serif;color:var(--texto);font-size:1.1rem}
.pie nav{margin-top:.6rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem .9rem;font-size:.95rem}
