/* =====================================================================
   Inolvidia · tema «esmeralda» — Gala art déco en Buenos Aires (demo: boda-esmeralda)
   §24.1 nº 5. Concepto: una noche de gala en un palacio de Recoleta. Terciopelo esmeralda,
   mármol negro con vetas de oro (Portoro), filetes dobles de oro champán, abanicos y soles
   nacientes, esquinas escalonadas, copas de champagne y polvo de oro en el aire.
   Tema OSCURO. Fuentes: Poiret One (solo títulos grandes y nombres) · Josefin Sans (texto,
   etiquetas y botones) · Rouge Script (caligrafía: «&», firmas, pie, nombre del pase).
   Arte: SVG propios generados por tools/temas/esmeralda.mjs (bloque @recursos, no editar a mano).
   Contraste medido (WCAG): marfil #F5EFE2 sobre esmeralda #0D2B23 13,2:1 · sobre tarjeta #123A2F
   11:1 · sobre ónix #0A0F0D 16,9:1 · texto secundario #C9C4B3 8,7:1 / 7,2:1 / 11:1 · oro champán
   #D4B26A 7,5:1 / 6,2:1 / 9,5:1 · botón oro con texto #0D2B23 7,5:1. El oro viejo #A8873F solo
   va en adornos. Todo acotado bajo html[data-theme="esmeralda"].
   Apertura «puertas» (§24.2): variables --puerta-* en :root (vitral déco de esmeralda y ámbar como
   --puerta-tallado) y ajustes de la escena al final; mientras el módulo no carga, el respaldo
   «curtain» sale como telón de terciopelo esmeralda con galones de oro.
   Revisión de arte (28-oct): mármol que fluye y empalma, vitral en las puertas y en las hojitas del
   retrato, estallido de sol déco como destello final, adornos comunes (trazo de la marca) pasados a
   rombo, sol naciente y copa de champagne, y respiro dentro de los marcos escalonados.
   ===================================================================== */

:root {
  --bg: #0D2B23;
  --bg-alt: #0A0F0D;
  --surface: #123A2F;
  --ink: #F5EFE2;
  --ink-soft: #C9C4B3;
  --accent: #D4B26A;
  --accent-2: #A8873F;
  --accent-ink: #0D2B23;
  --line: rgba(212, 178, 106, .26);
  --font-display: 'Poiret One', 'Josefin Sans', 'Century Gothic', 'Futura', sans-serif;
  --font-script: 'Rouge Script', 'Poiret One', cursive;
  --font-body: 'Josefin Sans', 'Century Gothic', 'Futura', system-ui, sans-serif;
  --radius: 2px;
  --shadow: 0 1px 0 rgba(239, 217, 162, .06) inset, 0 26px 50px -30px rgba(0, 0, 0, .9);
  --hero-overlay: linear-gradient(180deg, rgba(8, 20, 16, .15), rgba(8, 20, 16, .62));
  --hero-ink: #F5EFE2;
  --intro-bg: #08130F;
  --intro-ink: #F5EFE2;
  --seal: #1F5C4A;
  --pattern: var(--es-grain);
  --ornament: var(--es-ornament);
  color-scheme: dark;

  /* — propias del tema — */
  --es-esmeralda: #1F5C4A;
  --es-hondo: #0D2B23;
  --es-onix: #0A0F0D;
  --es-oro: #D4B26A;
  --es-oro-hi: #EFD9A2;
  --es-oro-lo: #A8873F;
  --es-marfil: #F5EFE2;
  --es-foil: linear-gradient(100deg, #A8873F 0%, #E9CF8E 22%, #FFF0C8 34%, #D4B26A 50%, #A8873F 68%, #EAD39A 86%, #C19A4E 100%);
  --es-velvet:
    radial-gradient(130% 55% at 18% 0%, rgba(62, 140, 112, .3), transparent 62%),
    radial-gradient(90% 60% at 100% 100%, rgba(3, 12, 9, .55), transparent 70%),
    radial-gradient(70% 40% at 85% 30%, rgba(31, 92, 74, .32), transparent 70%),
    linear-gradient(165deg, #113529 0%, #0C271F 48%, #0E2D24 100%);
  --es-panel:
    radial-gradient(120% 70% at 50% 0%, rgba(74, 150, 120, .22), transparent 60%),
    radial-gradient(100% 80% at 50% 120%, rgba(2, 10, 8, .5), transparent 65%),
    linear-gradient(180deg, #154236 0%, #103429 100%);
  --es-ease: cubic-bezier(.22, 1, .36, 1);

  /* — apertura «puertas» (§24.2, estilo déco): bronce dorado, vidrio esmerilado y marco de ónix — */
  --puerta-color: #8F6A2E;
  --puerta-color-2: #A8873F;
  --puerta-herraje: #D4B26A;
  --puerta-tallado: var(--es-door-glass);
  --puerta-marco: #0A0F0D;
  --puerta-marco-img: var(--es-marble);
  --puerta-arco: 0;
  --puerta-luz: #FFD9A0;
  --puerta-fx: polvo-oro;
  --credit-tone: oscuro;
}

/* @recursos:inicio — generado por tools/temas/esmeralda.mjs (no editar a mano) */
html[data-theme="esmeralda"] {
  --es-fan: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 168 54'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23EFD9A2'/%3E%3Cstop offset='1' stop-color='%23A8873F'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' stroke='%23D4B26A' stroke-linecap='round'%3E%3Cpath d='M52 46A32 32 0 0 1 116 46' stroke-width='1.1'/%3E%3Cpath d='M47 46A37 37 0 0 1 121 46' stroke-width='.6' stroke-opacity='.7'/%3E%3Cpath d='M74 42.8L56.4 37M75.5 39.8L63.8 31.3M77.8 37.5L67 22.5M80.8 36L76.3 22.2M84 35.5L84 17M87.2 36L91.7 22.2M90.2 37.5L101 22.5M92.5 39.8L104.2 31.3M94 42.8L111.6 37' stroke-width='.9'/%3E%3Cpath d='M6 46H44M124 46H162' stroke-width='1'/%3E%3Cpath d='M22 41H43M125 41H146' stroke-width='.7' stroke-opacity='.8'/%3E%3Cpath d='M36 36H42M126 36H132' stroke-width='.6' stroke-opacity='.6'/%3E%3Cpath d='M38 50H130' stroke-width='.6' stroke-opacity='.7'/%3E%3C/g%3E%3Cpath d='M74 46A10 10 0 0 1 94 46Z' fill='url(%23g)'/%3E%3Cpath d='M2 46l4-3 4 3-4 3zM158 46l4-3 4 3-4 3z' fill='%23D4B26A'/%3E%3C/svg%3E");
  --es-ornament: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 56'%3E%3Cg fill='none' stroke='%23D4B26A' stroke-linecap='round'%3E%3Cpath d='M150 9L169 28L150 47L131 28Z' stroke-width='1.1'/%3E%3Cpath d='M150 15L163 28L150 41L137 28Z' stroke-width='.7' stroke-opacity='.8'/%3E%3Cpath d='M8 28H123M177 28H292' stroke-width='1'/%3E%3Cpath d='M54 22H120M180 22H246M54 34H120M180 34H246' stroke-width='.7' stroke-opacity='.75'/%3E%3Cpath d='M92 16H116M184 16H208M92 40H116M184 40H208' stroke-width='.5' stroke-opacity='.5'/%3E%3C/g%3E%3Cpath d='M150 20C151 26 152 27 158 28C152 29 151 30 150 36C149 30 148 29 142 28C148 27 149 26 150 20Z' fill='%23EFD9A2'/%3E%3Cpath d='M2 28l5-3.5 5 3.5-5 3.5zM288 28l5-3.5 5 3.5-5 3.5z' fill='%23D4B26A'/%3E%3C/svg%3E");
  --es-rays: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-500 -500 1000 1000'%3E%3Cg fill='none' stroke='%23D4B26A'%3E%3Cpath d='M150 0L500 0M148.7 19.6L495.7 65.3M144.9 38.8L483 129.4M138.6 57.4L461.9 191.3M129.9 75L433 250M119 91.3L396.7 304.4M106.1 106.1L353.6 353.6M91.3 119L304.4 396.7M75 129.9L250 433M57.4 138.6L191.3 461.9M38.8 144.9L129.4 483M19.6 148.7L65.3 495.7M0 150L0 500M-19.6 148.7L-65.3 495.7M-38.8 144.9L-129.4 483M-57.4 138.6L-191.3 461.9M-75 129.9L-250 433M-91.3 119L-304.4 396.7M-106.1 106.1L-353.6 353.6M-119 91.3L-396.7 304.4M-129.9 75L-433 250M-138.6 57.4L-461.9 191.3M-144.9 38.8L-483 129.4M-148.7 19.6L-495.7 65.3M-150 0L-500 0M-148.7 -19.6L-495.7 -65.3M-144.9 -38.8L-483 -129.4M-138.6 -57.4L-461.9 -191.3M-129.9 -75L-433 -250M-119 -91.3L-396.7 -304.4M-106.1 -106.1L-353.6 -353.6M-91.3 -119L-304.4 -396.7M-75 -129.9L-250 -433M-57.4 -138.6L-191.3 -461.9M-38.8 -144.9L-129.4 -483M-19.6 -148.7L-65.3 -495.7M0 -150L0 -500M19.6 -148.7L65.3 -495.7M38.8 -144.9L129.4 -483M57.4 -138.6L191.3 -461.9M75 -129.9L250 -433M91.3 -119L304.4 -396.7M106.1 -106.1L353.6 -353.6M119 -91.3L396.7 -304.4M129.9 -75L433 -250M138.6 -57.4L461.9 -191.3M144.9 -38.8L483 -129.4M148.7 -19.6L495.7 -65.3' stroke-width='1.3'/%3E%3Cpath d='M171.6 11.2L389.2 25.5M168.7 33.6L294.2 58.5M162.9 55.3L369.3 125.4M154.3 76.1L269.1 132.7M143 95.6L324.3 216.7M129.3 113.4L225.6 197.8M113.4 129.3L257.1 293.2M95.6 143L166.7 249.4M76.1 154.3L172.5 349.8M55.3 162.9L96.4 284.1M33.6 168.7L76.1 382.5M11.2 171.6L19.6 299.4M-11.2 171.6L-25.5 389.2M-33.6 168.7L-58.5 294.2M-55.3 162.9L-125.4 369.3M-76.1 154.3L-132.7 269.1M-95.6 143L-216.7 324.3M-113.4 129.3L-197.8 225.6M-129.3 113.4L-293.2 257.1M-143 95.6L-249.4 166.7M-154.3 76.1L-349.8 172.5M-162.9 55.3L-284.1 96.4M-168.7 33.6L-382.5 76.1M-171.6 11.2L-299.4 19.6M-171.6 -11.2L-389.2 -25.5M-168.7 -33.6L-294.2 -58.5M-162.9 -55.3L-369.3 -125.4M-154.3 -76.1L-269.1 -132.7M-143 -95.6L-324.3 -216.7M-129.3 -113.4L-225.6 -197.8M-113.4 -129.3L-257.1 -293.2M-95.6 -143L-166.7 -249.4M-76.1 -154.3L-172.5 -349.8M-55.3 -162.9L-96.4 -284.1M-33.6 -168.7L-76.1 -382.5M-11.2 -171.6L-19.6 -299.4M11.2 -171.6L25.5 -389.2M33.6 -168.7L58.5 -294.2M55.3 -162.9L125.4 -369.3M76.1 -154.3L132.7 -269.1M95.6 -143L216.7 -324.3M113.4 -129.3L197.8 -225.6M129.3 -113.4L293.2 -257.1M143 -95.6L249.4 -166.7M154.3 -76.1L349.8 -172.5M162.9 -55.3L284.1 -96.4M168.7 -33.6L382.5 -76.1M171.6 -11.2L299.4 -19.6' stroke-width='.8' stroke-opacity='.75'/%3E%3Ccircle r='138' stroke-width='1.2'/%3E%3Ccircle r='128' stroke-width='.6' stroke-opacity='.7'/%3E%3C/g%3E%3C/svg%3E");
  --es-frame: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23D4B26A'%3E%3Cg transform=''%3E%3Cpath d='M32 .5H14V6H6V14H.5V32' stroke-width='1'/%3E%3Cpath d='M32 4.5H18V10H10V18H4.5V32' stroke-width='0.7' stroke-opacity='.75'/%3E%3Crect x='1.5' y='1.5' width='3' height='3' fill='%23D4B26A' stroke='none'/%3E%3C/g%3E%3Cg transform='translate(96 0) scale(-1 1)'%3E%3Cpath d='M32 .5H14V6H6V14H.5V32' stroke-width='1'/%3E%3Cpath d='M32 4.5H18V10H10V18H4.5V32' stroke-width='0.7' stroke-opacity='.75'/%3E%3Crect x='1.5' y='1.5' width='3' height='3' fill='%23D4B26A' stroke='none'/%3E%3C/g%3E%3Cg transform='translate(0 96) scale(1 -1)'%3E%3Cpath d='M32 .5H14V6H6V14H.5V32' stroke-width='1'/%3E%3Cpath d='M32 4.5H18V10H10V18H4.5V32' stroke-width='0.7' stroke-opacity='.75'/%3E%3Crect x='1.5' y='1.5' width='3' height='3' fill='%23D4B26A' stroke='none'/%3E%3C/g%3E%3Cg transform='translate(96 96) scale(-1 -1)'%3E%3Cpath d='M32 .5H14V6H6V14H.5V32' stroke-width='1'/%3E%3Cpath d='M32 4.5H18V10H10V18H4.5V32' stroke-width='0.7' stroke-opacity='.75'/%3E%3Crect x='1.5' y='1.5' width='3' height='3' fill='%23D4B26A' stroke='none'/%3E%3C/g%3E%3Cpath d='M32 .5H64M32 95.5H64M.5 32V64M95.5 32V64' stroke-width='1'/%3E%3Cpath d='M32 4.5H64M32 91.5H64M4.5 32V64M91.5 32V64' stroke-width='0.7' stroke-opacity='.75'/%3E%3C/g%3E%3C/svg%3E");
  --es-frame-sm: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23D4B26A'%3E%3Cg transform=''%3E%3Cpath d='M32 .5H14V6H6V14H.5V32' stroke-width='2.2'/%3E%3Cpath d='M32 4.5H18V10H10V18H4.5V32' stroke-width='1.54' stroke-opacity='.75'/%3E%3Crect x='1.5' y='1.5' width='3' height='3' fill='%23D4B26A' stroke='none'/%3E%3C/g%3E%3Cg transform='translate(96 0) scale(-1 1)'%3E%3Cpath d='M32 .5H14V6H6V14H.5V32' stroke-width='2.2'/%3E%3Cpath d='M32 4.5H18V10H10V18H4.5V32' stroke-width='1.54' stroke-opacity='.75'/%3E%3Crect x='1.5' y='1.5' width='3' height='3' fill='%23D4B26A' stroke='none'/%3E%3C/g%3E%3Cg transform='translate(0 96) scale(1 -1)'%3E%3Cpath d='M32 .5H14V6H6V14H.5V32' stroke-width='2.2'/%3E%3Cpath d='M32 4.5H18V10H10V18H4.5V32' stroke-width='1.54' stroke-opacity='.75'/%3E%3Crect x='1.5' y='1.5' width='3' height='3' fill='%23D4B26A' stroke='none'/%3E%3C/g%3E%3Cg transform='translate(96 96) scale(-1 -1)'%3E%3Cpath d='M32 .5H14V6H6V14H.5V32' stroke-width='2.2'/%3E%3Cpath d='M32 4.5H18V10H10V18H4.5V32' stroke-width='1.54' stroke-opacity='.75'/%3E%3Crect x='1.5' y='1.5' width='3' height='3' fill='%23D4B26A' stroke='none'/%3E%3C/g%3E%3Cpath d='M32 .5H64M32 95.5H64M.5 32V64M95.5 32V64' stroke-width='2.2'/%3E%3Cpath d='M32 4.5H64M32 91.5H64M4.5 32V64M91.5 32V64' stroke-width='1.54' stroke-opacity='.75'/%3E%3C/g%3E%3C/svg%3E");
  --es-marble: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='1100' viewBox='0 0 600 1100'%3E%3Cstyle%3E.h{stroke:%23D4B26A;stroke-opacity:.04;stroke-dasharray:0 12 76 12}.b{stroke:%23A8873F;stroke-opacity:.26}.c{stroke:%23A8873F;stroke-opacity:.2;stroke-dasharray:0 26 48 26}.d{stroke:%23EFD9A2;stroke-opacity:.4;stroke-dasharray:0 8 84 8}.e{stroke:%23EFD9A2}%3C/style%3E%3Cdefs%3E%3CradialGradient id='n'%3E%3Cstop offset='0' stop-color='%233A4A44' stop-opacity='.2'/%3E%3Cstop offset='1' stop-color='%233A4A44' stop-opacity='0'/%3E%3C/radialGradient%3E%3Cpath id='v0' pathLength='100' d='M-80 60l12 8l11 8l12 7l12 7l12 7l12 7l12 7l12 8l12 7l12 8l12 7l12 7l12 7l12 8l12 7l11 8l12 7l12 7l13 7l12 7l12 6l13 6l13 6l12 6l13 6l13 6l13 6l12 6l12 7l12 7l12 7l12 8l11 9l11 8l10 9l11 10l10 9l11 9l10 10l11 9l10 10l10 9l11 9l11 9l10 9l11 9l11 9l11 8l12 9l11 7l12 8l12 7l12 7l13 6l13 6l13 5l13 5l13 6l13 4l13 5l13 5l13 4l14 5l13 4l13 5l13 5l13 6l13 5l13 6l12 5'/%3E%3Cg id='w0'%3E%3Cuse href='%23v0' class='h' stroke-width='14.4'/%3E%3Cuse href='%23v0' class='b' stroke-width='1.9'/%3E%3Cuse href='%23v0' class='c' stroke-width='4.3'/%3E%3Cuse href='%23v0' class='d' stroke-width='0.8'/%3E%3C/g%3E%3Cpath id='v1' pathLength='100' d='M-80 60l11 8l11 9l12 8l12 8l12 7l11 8l12 7l11 8l12 8l12 8l11 8l12 8l12 7l11 8l12 7l12 8l12 8l12 7l13 7l12 6l13 6l13 6l12 6l13 6l13 5l13 6l13 5l12 6l13 6l12 7l12 7l11 8l12 8l11 8l11 9l10 9l11 9l11 9l10 9l11 9l10 10l10 9l11 9l11 9l10 10l11 9l11 8l11 9l11 8l12 8l12 8l12 7l12 7l13 7l12 6l13 5l13 6l13 5l13 5l14 5l13 4l13 4l14 4l13 5l13 4l13 5l13 5l13 5l13 5l13 5'/%3E%3Cg id='w1'%3E%3Cuse href='%23v1' class='h' stroke-width='6.9'/%3E%3Cuse href='%23v1' class='b' stroke-width='0.9'/%3E%3Cuse href='%23v1' class='c' stroke-width='2.1'/%3E%3Cuse href='%23v1' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v2' pathLength='100' d='M-80 60l12 8l11 7l12 8l13 6l12 7l12 7l12 7l12 7l12 7l12 7l13 7l12 7l12 7l12 7l12 8l12 7l12 7l12 7l12 7l12 6l13 6l12 6l13 6l13 6l13 6l12 5l13 6l13 7l12 7l12 7l12 8l12 8l11 9l11 8l11 10l10 9l11 9l10 10l10 9l11 10l10 10l10 9l10 10l11 9l10 9l11 9l11 9l11 9l11 8l11 8l12 7l12 7l12 7l13 7l12 6l13 5l13 6l13 5l13 5l13 5l13 4l14 5l13 4l13 5l13 5l13 5l13 6l13 5l13 6l12 5'/%3E%3Cg id='w2'%3E%3Cuse href='%23v2' class='h' stroke-width='7.5'/%3E%3Cuse href='%23v2' class='b' stroke-width='1'/%3E%3Cuse href='%23v2' class='c' stroke-width='2.2'/%3E%3Cuse href='%23v2' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v3' pathLength='100' d='M-80 60l11 8l12 8l12 8l12 7l12 7l12 7l12 7l12 7l12 8l12 7l12 8l11 7l12 7l12 8l12 7l12 8l11 8l12 7l13 7l12 7l12 7l13 6l12 7l13 6l12 6l13 7l12 6l12 7l12 7l11 7l11 8l11 9l11 9l10 8l10 10l10 9l11 10l10 9l10 10l10 10l10 9l11 10l10 9l11 9l11 9l11 9l11 9l12 9l12 8l12 7l12 7l13 7l13 7l13 6l13 5l13 5l14 5l13 4l13 5l14 4l14 4l13 3l13 4l14 4l13 5l13 4l13 5l13 5l13 5l13 5'/%3E%3Cg id='w3'%3E%3Cuse href='%23v3' class='h' stroke-width='6.3'/%3E%3Cuse href='%23v3' class='b' stroke-width='0.8'/%3E%3Cuse href='%23v3' class='c' stroke-width='1.9'/%3E%3Cuse href='%23v3' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v4' pathLength='100' d='M159 206l12 0l12 0l12 0l12 0l12 0l12 0l12 0l12 0l12 -1l12 -1l12 -2l12 -2l11 -2l12 -3l12 -2l11 -3l12 -4l11 -3l12 -4l11 -4l11 -5l11 -5l11 -5l11 -6l10 -5l11 -6l10 -6l11 -6l10 -5l11 -6'/%3E%3Cg id='w4'%3E%3Cuse href='%23v4' class='h' stroke-width='5.8'/%3E%3Cuse href='%23v4' class='b' stroke-width='0.8'/%3E%3Cuse href='%23v4' class='c' stroke-width='1.7'/%3E%3Cuse href='%23v4' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v5' pathLength='100' d='M159 206l12 0l12 0l12 0l12 0l12 0l12 0l12 1l12 0l12 2l12 2l11 2l12 3l12 2l12 3l11 3l12 4l11 3l12 4l11 4l11 3l12 4l11 3l12 4l11 3l12 2l12 2'/%3E%3Cg id='w5'%3E%3Cuse href='%23v5' class='h' stroke-width='5.8'/%3E%3Cuse href='%23v5' class='b' stroke-width='0.8'/%3E%3Cuse href='%23v5' class='c' stroke-width='1.7'/%3E%3Cuse href='%23v5' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v6' pathLength='100' d='M-60 520l12 7l12 7l12 7l12 8l12 7l12 8l11 8l12 8l11 8l11 9l11 8l12 8l11 8l12 7l13 6l12 7l13 5l13 6l13 5l13 5l13 6l13 4l13 5l14 5l13 4l13 5l13 4l14 4l13 4l13 4l14 4l13 4l14 5l13 4l13 5l13 5l13 5l14 4l13 4l14 3l14 2l13 2l14 1l14 1l14 1l14 2l14 2l14 2l14 2l13 3l14 3l14 4l13 4l13 5l13 5l12 7l13 6l12 7l12 7l12 7l13 7l12 6l13 6l12 6l13 6l13 5'/%3E%3Cg id='w6'%3E%3Cuse href='%23v6' class='h' stroke-width='10.8'/%3E%3Cuse href='%23v6' class='b' stroke-width='1.4'/%3E%3Cuse href='%23v6' class='c' stroke-width='3.2'/%3E%3Cuse href='%23v6' class='d' stroke-width='0.6'/%3E%3C/g%3E%3Cpath id='v7' pathLength='100' d='M-60 520l12 7l12 7l12 7l12 8l12 7l11 8l12 8l11 9l11 8l11 9l11 9l11 8l12 8l12 8l12 7l12 7l13 6l13 6l12 6l13 6l13 6l13 5l13 6l13 5l13 5l14 5l13 5l13 4l14 5l13 4l13 4l14 4l13 4l13 5l13 4l13 5l14 4l14 4l14 4l14 2l14 2l14 1l15 1l14 0l14 1l14 1l13 1l14 1l14 2l14 2l13 3l14 3l13 4l13 4l13 5l13 6l12 7l13 6l12 7l12 7l12 7l13 6l13 6l12 6l13 6l13 5'/%3E%3Cg id='w7'%3E%3Cuse href='%23v7' class='h' stroke-width='5'/%3E%3Cuse href='%23v7' class='b' stroke-width='0.7'/%3E%3Cuse href='%23v7' class='c' stroke-width='1.5'/%3E%3Cuse href='%23v7' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v8' pathLength='100' d='M-60 520l12 7l13 6l12 7l12 7l12 7l12 7l12 8l12 8l11 8l12 8l11 8l12 7l12 7l12 7l12 7l12 5l13 6l13 6l13 5l12 6l13 5l13 5l13 5l13 5l13 5l13 5l13 4l14 5l13 4l13 5l13 4l14 5l13 4l13 5l13 5l13 5l14 5l13 4l13 4l14 2l14 3l14 1l14 1l13 1l15 1l14 1l14 1l13 2l14 3l14 2l14 3l14 3l13 5l14 5l13 5l12 7l13 7l12 7l12 7l12 7l12 7l12 7l12 7l13 6l12 6l13 6'/%3E%3Cg id='w8'%3E%3Cuse href='%23v8' class='h' stroke-width='6.1'/%3E%3Cuse href='%23v8' class='b' stroke-width='0.8'/%3E%3Cuse href='%23v8' class='c' stroke-width='1.8'/%3E%3Cuse href='%23v8' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v9' pathLength='100' d='M-60 520l12 7l12 7l12 7l12 8l12 7l11 8l12 8l11 9l11 8l11 9l11 8l12 9l11 7l12 8l13 7l12 6l13 6l13 6l12 6l13 6l13 5l13 6l13 5l13 5l13 5l14 5l13 5l13 4l13 5l14 5l13 4l13 4l13 5l13 5l13 5l13 5l13 5l14 5l14 4l14 3l15 3l14 2l14 1l14 1l14 1l14 1l13 2l14 2l14 2l13 2l14 3l13 3l13 3l13 4l12 5l13 5l12 6l13 6l13 7l12 6l13 6l13 6l13 5l13 5l13 5l13 5'/%3E%3Cg id='w9'%3E%3Cuse href='%23v9' class='h' stroke-width='3.4'/%3E%3Cuse href='%23v9' class='b' stroke-width='0.5'/%3E%3Cuse href='%23v9' class='c' stroke-width='1'/%3E%3Cuse href='%23v9' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v10' pathLength='100' d='M193 668l12 1l12 2l12 2l11 1l12 2l12 2l12 2l12 2l12 2l11 3l12 3l11 4l12 3l11 4'/%3E%3Cg id='w10'%3E%3Cuse href='%23v10' class='h' stroke-width='4.3'/%3E%3Cuse href='%23v10' class='b' stroke-width='0.6'/%3E%3Cuse href='%23v10' class='c' stroke-width='1.3'/%3E%3Cuse href='%23v10' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v11' pathLength='100' d='M557 763l12 0l12 1l12 0l12 1l12 0l12 1l12 1l12 1l12 1l12 0l12 1l12 1l12 1l12 0l12 0l12 0l12 0l12 -1l12 -1l12 -1l11 -1l12 -1l12 -2l12 -1l12 -1l12 -1l12 -1l12 -1l12 -1l12 -2'/%3E%3Cg id='w11'%3E%3Cuse href='%23v11' class='h' stroke-width='4.3'/%3E%3Cuse href='%23v11' class='b' stroke-width='0.6'/%3E%3Cuse href='%23v11' class='c' stroke-width='1.3'/%3E%3Cuse href='%23v11' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v12' pathLength='100' d='M140 -70l8 12l8 11l9 11l9 11l9 10l10 10l10 9l11 10l10 9l11 8l12 9l11 8l12 7l12 8l11 8l12 8l11 8l11 9l10 9l11 10l9 10l10 10l9 11l9 11l8 11l8 11l8 12l8 12l8 11l7 12l9 11l8 12l8 11l8 11l8 12l8 11l9 11l9 11l9 11l9 10l9 11l9 11l8 11l9 11l8 11l8 12l8 11l8 12l8 11l9 12l8 11l8 11l8 12l8 11l9 11l8 11l9 11l9 11l9 11l9 10l9 11l10 10l10 9l11 9l11 10'/%3E%3Cg id='w12'%3E%3Cuse href='%23v12' class='h' stroke-width='7.8'/%3E%3Cuse href='%23v12' class='b' stroke-width='1'/%3E%3Cuse href='%23v12' class='c' stroke-width='2.3'/%3E%3Cuse href='%23v12' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v13' pathLength='100' d='M140 -70l8 12l8 11l8 11l9 11l10 10l10 10l10 10l10 9l11 9l11 9l11 8l12 9l11 7l12 8l12 8l11 8l11 9l10 9l11 9l10 10l9 10l9 10l9 11l9 11l8 11l7 12l8 12l7 12l7 12l8 12l8 11l7 12l8 12l8 11l8 12l8 12l8 11l9 11l9 11l9 11l9 11l9 10l8 11l8 12l8 11l9 11l8 11l8 12l8 11l8 11l9 11l8 12l9 11l9 11l9 11l9 10l9 11l10 11l9 10l10 10l10 10l10 10l11 8l12 9l11 9'/%3E%3Cg id='w13'%3E%3Cuse href='%23v13' class='h' stroke-width='4.2'/%3E%3Cuse href='%23v13' class='b' stroke-width='0.6'/%3E%3Cuse href='%23v13' class='c' stroke-width='1.3'/%3E%3Cuse href='%23v13' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v14' pathLength='100' d='M140 -70l8 11l8 12l9 10l10 11l9 10l10 10l10 9l11 9l11 9l10 9l12 8l11 8l12 8l12 8l11 7l12 8l11 9l11 9l11 9l10 9l11 10l9 10l10 10l10 11l9 11l8 11l9 11l8 11l9 11l9 11l8 11l9 11l9 11l9 10l9 11l9 11l8 10l9 10l10 11l9 10l10 11l9 11l9 11l8 12l8 11l8 12l8 12l8 11l7 12l7 12l8 12l7 12l7 12l8 12l7 11l8 12l8 12l8 11l8 11l8 12l9 11l9 10l9 10l11 10l10 10'/%3E%3Cg id='w14'%3E%3Cuse href='%23v14' class='h' stroke-width='2.5'/%3E%3Cuse href='%23v14' class='b' stroke-width='0.3'/%3E%3Cuse href='%23v14' class='c' stroke-width='0.7'/%3E%3Cuse href='%23v14' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v15' pathLength='100' d='M140 -70l8 12l8 11l8 11l9 11l10 10l9 11l10 10l10 9l11 10l11 9l11 9l11 8l11 9l12 8l11 8l11 8l10 9l10 10l10 9l10 10l9 10l9 10l8 11l9 11l8 11l8 11l7 11l8 12l8 12l9 11l8 11l8 11l9 12l9 11l9 11l8 11l10 10l9 11l10 10l9 10l10 10l9 11l9 11l9 10l9 11l8 12l8 11l9 11l8 12l8 11l8 11l8 12l8 11l8 12l9 11l9 11l8 11l9 11l9 10l9 11l10 10l9 10l11 10l11 9l11 9'/%3E%3Cg id='w15'%3E%3Cuse href='%23v15' class='h' stroke-width='2.2'/%3E%3Cuse href='%23v15' class='b' stroke-width='0.3'/%3E%3Cuse href='%23v15' class='c' stroke-width='0.7'/%3E%3Cuse href='%23v15' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v16' pathLength='100' d='M526 348l10 6l10 7l11 6l10 6l11 5l10 6l11 5l11 6l11 5l10 5l11 6l11 6l10 6l10 6'/%3E%3Cg id='w16'%3E%3Cuse href='%23v16' class='h' stroke-width='3.1'/%3E%3Cuse href='%23v16' class='b' stroke-width='0.4'/%3E%3Cuse href='%23v16' class='c' stroke-width='0.9'/%3E%3Cuse href='%23v16' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v17' pathLength='100' d='M617 472l11 5l11 5l10 5l11 6l11 5l11 5l10 6l11 6l10 5l11 6l11 6l10 5l11 6l11 5l10 5l11 6l11 5l11 5l11 5l11 4l11 4l12 4l11 4l11 5l11 3l12 4l11 4l12 3'/%3E%3Cg id='w17'%3E%3Cuse href='%23v17' class='h' stroke-width='3.1'/%3E%3Cuse href='%23v17' class='b' stroke-width='0.4'/%3E%3Cuse href='%23v17' class='c' stroke-width='0.9'/%3E%3Cuse href='%23v17' class='d' stroke-width='0.5'/%3E%3C/g%3E%3Cpath id='v18' pathLength='100' d='M589 932l2 12l1 12l2 12l2 12l2 12l2 12l2 11l2 12l2 12l1 12l2 12l0 12l1 12l0 12l-1 12l0 12l-1 12l0 12l-1 12l0 12l0 12l1 12l1 12l2 12l1 11l2 12'/%3E%3Cuse id='w18' href='%23v18' class='e' stroke-width='0.5' stroke-opacity='.5'/%3E%3Cpath id='v19' pathLength='100' d='M212 723l5 11l4 11l4 11l4 11l5 12l4 11l4 11l4 11l5 11l4 12l5 11l5 11l5 10l6 11l7 10l6 10l7 10'/%3E%3Cuse id='w19' href='%23v19' class='e' stroke-width='0.5' stroke-opacity='.5'/%3E%3Cpath id='v20' pathLength='100' d='M85 779l6 10l6 11l6 10l7 10l7 10l7 9l7 10l7 10l7 9l7 10l7 10l6 10l6 11l6 10l6 11l5 10l6 11l5 11l5 11l5 11l5 11l5 10l4 12l5 11l4 11l5 11l4 11l5 11l4 11'/%3E%3Cuse id='w20' href='%23v20' class='e' stroke-width='0.5' stroke-opacity='.5'/%3E%3Cpath id='v21' pathLength='100' d='M154 494l2 12l2 12l2 11l2 12l2 12l2 12l1 12l2 12l1 12l0 12l1 12l0 12l0 12l-1 12l-1 12l-2 11l-3 12l-2 12l-4 11l-3 12l-3 12l-3 11l-2 12l-3 12l-2 11l-3 12l-2 12l-2 12l-1 12l-1 12l0 12l-1 12l0 12l-1 12l0 12'/%3E%3Cuse id='w21' href='%23v21' class='e' stroke-width='0.7' stroke-opacity='.5'/%3E%3Cpath id='v22' pathLength='100' d='M197 409l8 8l9 9l9 8l8 8l9 8l9 8l10 8l9 7l9 8l9 8l10 7l9 7l10 8l9 8l8 8l9 9l7 9l8 9l7 10l7 10l6 10l7 10l7 9l7 11'/%3E%3Cuse id='w22' href='%23v22' class='e' stroke-width='0.5' stroke-opacity='.5'/%3E%3C/defs%3E%3Cg id='k' fill='url(%23n)'%3E%3Cellipse cx='388' cy='336' rx='191' ry='74' transform='rotate(106)'/%3E%3Cellipse cx='145' cy='404' rx='180' ry='119' transform='rotate(89)'/%3E%3Cellipse cx='454' cy='973' rx='174' ry='105' transform='rotate(113)'/%3E%3Cellipse cx='348' cy='348' rx='227' ry='135' transform='rotate(22)'/%3E%3Cellipse cx='5' cy='578' rx='265' ry='114' transform='rotate(53)'/%3E%3Cellipse cx='19' cy='913' rx='251' ry='77' transform='rotate(46)'/%3E%3Cellipse cx='149' cy='593' rx='145' ry='76' transform='rotate(68)'/%3E%3C/g%3E%3Cuse href='%23k' x='-600' y='-1100'/%3E%3Cuse href='%23k' x='-600' y='0'/%3E%3Cuse href='%23k' x='-600' y='1100'/%3E%3Cuse href='%23k' x='0' y='-1100'/%3E%3Cuse href='%23k' x='0' y='1100'/%3E%3Cuse href='%23k' x='600' y='-1100'/%3E%3Cuse href='%23k' x='600' y='0'/%3E%3Cuse href='%23k' x='600' y='1100'/%3E%3Cg fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cuse href='%23w0'/%3E%3Cuse href='%23w0' x='-600'/%3E%3Cuse href='%23w0' x='600'/%3E%3Cuse href='%23w1'/%3E%3Cuse href='%23w1' x='-600'/%3E%3Cuse href='%23w1' x='600'/%3E%3Cuse href='%23w2'/%3E%3Cuse href='%23w2' x='-600'/%3E%3Cuse href='%23w2' x='600'/%3E%3Cuse href='%23w3'/%3E%3Cuse href='%23w3' x='-600'/%3E%3Cuse href='%23w3' x='600'/%3E%3Cuse href='%23w4'/%3E%3Cuse href='%23w5'/%3E%3Cuse href='%23w6'/%3E%3Cuse href='%23w6' x='-600'/%3E%3Cuse href='%23w6' x='600'/%3E%3Cuse href='%23w7'/%3E%3Cuse href='%23w7' x='-600'/%3E%3Cuse href='%23w7' x='600'/%3E%3Cuse href='%23w8'/%3E%3Cuse href='%23w8' x='-600'/%3E%3Cuse href='%23w8' x='600'/%3E%3Cuse href='%23w9'/%3E%3Cuse href='%23w9' x='-600'/%3E%3Cuse href='%23w9' x='600'/%3E%3Cuse href='%23w10'/%3E%3Cuse href='%23w11'/%3E%3Cuse href='%23w11' x='-600'/%3E%3Cuse href='%23w12'/%3E%3Cuse href='%23w12' y='1100'/%3E%3Cuse href='%23w12' x='-600'/%3E%3Cuse href='%23w12' x='-600' y='1100'/%3E%3Cuse href='%23w13'/%3E%3Cuse href='%23w13' y='1100'/%3E%3Cuse href='%23w13' x='-600'/%3E%3Cuse href='%23w13' x='-600' y='1100'/%3E%3Cuse href='%23w14'/%3E%3Cuse href='%23w14' y='1100'/%3E%3Cuse href='%23w14' x='-600'/%3E%3Cuse href='%23w14' x='-600' y='1100'/%3E%3Cuse href='%23w15'/%3E%3Cuse href='%23w15' y='1100'/%3E%3Cuse href='%23w15' x='-600'/%3E%3Cuse href='%23w15' x='-600' y='1100'/%3E%3Cuse href='%23w16'/%3E%3Cuse href='%23w16' x='-600'/%3E%3Cuse href='%23w17' x='-600'/%3E%3Cuse href='%23w18'/%3E%3Cuse href='%23w18' y='-1100'/%3E%3Cuse href='%23w18' x='-600'/%3E%3Cuse href='%23w18' x='-600' y='-1100'/%3E%3Cuse href='%23w19'/%3E%3Cuse href='%23w20'/%3E%3Cuse href='%23w21'/%3E%3Cuse href='%23w22'/%3E%3C/g%3E%3C/svg%3E");
  --es-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' seed='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .86 0 0 0 0 .8 0 0 0 0 .62 0 0 0 .075 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --es-frieze: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='14' viewBox='0 0 40 14'%3E%3Cg fill='none' stroke='%23D4B26A' stroke-width='.9'%3E%3Cpath d='M0 .5H40M0 13.5H40' stroke-opacity='.9'/%3E%3Cpath d='M0 11H7V8.5H11V6H15V3.5H25V6H29V8.5H33V11H40' stroke-opacity='.75'/%3E%3C/g%3E%3Crect x='18.6' y='6.3' width='2.8' height='2.8' transform='rotate(45 20 7.7)' fill='%23D4B26A' fill-opacity='.8'/%3E%3C/svg%3E");
  --es-coupes: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 104'%3E%3Cdefs%3E%3ClinearGradient id='l' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23EFD9A2' stop-opacity='.55'/%3E%3Cstop offset='1' stop-color='%23D4B26A' stop-opacity='.25'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg transform='translate(66 54) rotate(-16)'%3E%3Cpath d='M-30 -26Q-28 -6 0 -4Q28 -6 30 -26Z' fill='url(%23l)' stroke='none'/%3E%3Cpath d='M-34 -32Q-31 -4 0 -2Q31 -4 34 -32' fill='none' stroke='%23D4B26A' stroke-width='1.4'/%3E%3Cellipse cx='0' cy='-32' rx='34' ry='4' fill='none' stroke='%23D4B26A' stroke-width='1.1'/%3E%3Cpath d='M-30 -26Q0 -22 30 -26' fill='none' stroke='%23EFD9A2' stroke-width='.7' stroke-opacity='.8'/%3E%3Cpath d='M0 -2V34M-2.2 6H2.2' fill='none' stroke='%23D4B26A' stroke-width='1.3' stroke-linecap='round'/%3E%3Cpath d='M-17 38Q0 31 17 38Q0 42 -17 38Z' fill='none' stroke='%23D4B26A' stroke-width='1.2'/%3E%3Cg fill='%23EFD9A2'%3E%3Ccircle cx='-8' cy='-12' r='1.2'/%3E%3Ccircle cx='5' cy='-16' r='.9'/%3E%3Ccircle cx='12' cy='-10' r='1.1'/%3E%3Ccircle cx='-2' cy='-20' r='.8'/%3E%3C/g%3E%3C/g%3E%3Cg transform='translate(134 54) rotate(16)'%3E%3Cpath d='M-30 -26Q-28 -6 0 -4Q28 -6 30 -26Z' fill='url(%23l)' stroke='none'/%3E%3Cpath d='M-34 -32Q-31 -4 0 -2Q31 -4 34 -32' fill='none' stroke='%23D4B26A' stroke-width='1.4'/%3E%3Cellipse cx='0' cy='-32' rx='34' ry='4' fill='none' stroke='%23D4B26A' stroke-width='1.1'/%3E%3Cpath d='M-30 -26Q0 -22 30 -26' fill='none' stroke='%23EFD9A2' stroke-width='.7' stroke-opacity='.8'/%3E%3Cpath d='M0 -2V34M-2.2 6H2.2' fill='none' stroke='%23D4B26A' stroke-width='1.3' stroke-linecap='round'/%3E%3Cpath d='M-17 38Q0 31 17 38Q0 42 -17 38Z' fill='none' stroke='%23D4B26A' stroke-width='1.2'/%3E%3Cg fill='%23EFD9A2'%3E%3Ccircle cx='-8' cy='-12' r='1.2'/%3E%3Ccircle cx='5' cy='-16' r='.9'/%3E%3Ccircle cx='12' cy='-10' r='1.1'/%3E%3Ccircle cx='-2' cy='-20' r='.8'/%3E%3C/g%3E%3C/g%3E%3Cpath d='M91.1 14.4L78.3 12.2M92.2 11.5L86.1 8M94.2 9.1L85.9 -0.9M96.9 7.5L94.5 1M100 7L100 -6M103.1 7.5L105.5 1M105.8 9.1L114.1 -0.9M107.8 11.5L113.9 8M108.9 14.4L121.7 12.2' fill='none' stroke='%23EFD9A2' stroke-width='1.1' stroke-linecap='round'/%3E%3Cg fill='%23EFD9A2'%3E%3Ccircle cx='86' cy='4' r='1.4'/%3E%3Ccircle cx='114' cy='6' r='1.1'/%3E%3Ccircle cx='100' cy='1.5' r='1'/%3E%3C/g%3E%3C/svg%3E");
  --es-dust: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='640'%3E%3Cdefs%3E%3CradialGradient id='h'%3E%3Cstop offset='0' stop-color='%23FFF3D2'/%3E%3Cstop offset='.25' stop-color='%23EFD9A2' stop-opacity='.7'/%3E%3Cstop offset='1' stop-color='%23D4B26A' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='316.2' cy='330.9' r='0.8' fill='%23EFD9A2' opacity='0.5'/%3E%3Ccircle cx='260.9' cy='412.8' r='1.8' fill='%23EFD9A2' opacity='0.6'/%3E%3Ccircle cx='58.8' cy='423.3' r='1.8' fill='%23EFD9A2' opacity='0.7'/%3E%3Ccircle cx='199.1' cy='155.2' r='0.7' fill='%23D4B26A' opacity='0.6'/%3E%3Ccircle cx='42.4' cy='122.8' r='1.1' fill='%23EFD9A2' opacity='0.3'/%3E%3Ccircle cx='235.2' cy='264.9' r='1' fill='%23EFD9A2' opacity='0.4'/%3E%3Ccircle cx='195.2' cy='470.5' r='5.4' fill='url(%23h)' opacity='0.8'/%3E%3Ccircle cx='206.9' cy='91.2' r='1.5' fill='%23EFD9A2' opacity='0.8'/%3E%3Ccircle cx='34' cy='617.7' r='1.1' fill='%23EFD9A2' opacity='0.3'/%3E%3Ccircle cx='111.2' cy='381' r='1.2' fill='%23EFD9A2' opacity='0.4'/%3E%3Ccircle cx='16' cy='397.9' r='1.6' fill='url(%23h)' opacity='0.6'/%3E%3Ccircle cx='196.6' cy='323.5' r='5.4' fill='url(%23h)' opacity='0.8'/%3E%3Ccircle cx='113.2' cy='232' r='0.9' fill='%23EFD9A2' opacity='0.4'/%3E%3Ccircle cx='235.2' cy='357.3' r='0.7' fill='%23EFD9A2' opacity='0.5'/%3E%3Ccircle cx='162' cy='239.8' r='2.8' fill='url(%23h)' opacity='0.7'/%3E%3Ccircle cx='249.3' cy='313.6' r='1.2' fill='%23D4B26A' opacity='0.7'/%3E%3Ccircle cx='102.5' cy='143.2' r='1.5' fill='%23EFD9A2' opacity='0.7'/%3E%3Ccircle cx='33.8' cy='599.1' r='5.7' fill='url(%23h)' opacity='0.7'/%3E%3Ccircle cx='154.7' cy='371.3' r='0.6' fill='%23D4B26A' opacity='0.6'/%3E%3Ccircle cx='83' cy='27.9' r='1.8' fill='%23EFD9A2' opacity='0.6'/%3E%3Ccircle cx='316.9' cy='187.1' r='0.7' fill='%23EFD9A2' opacity='0.7'/%3E%3Ccircle cx='48.7' cy='168.9' r='2' fill='%23EFD9A2' opacity='0.3'/%3E%3Ccircle cx='109' cy='414.9' r='1.1' fill='%23EFD9A2' opacity='0.5'/%3E%3Ccircle cx='217' cy='545.3' r='2' fill='%23EFD9A2' opacity='0.5'/%3E%3Ccircle cx='51.1' cy='350.8' r='0.8' fill='%23D4B26A' opacity='0.3'/%3E%3Ccircle cx='230.5' cy='264.2' r='1.9' fill='%23EFD9A2' opacity='0.5'/%3E%3Ccircle cx='219.8' cy='189.9' r='0.8' fill='%23D4B26A' opacity='0.6'/%3E%3Ccircle cx='11.5' cy='206.6' r='1.5' fill='%23EFD9A2' opacity='0.6'/%3E%3Ccircle cx='70.2' cy='339.5' r='1.2' fill='%23EFD9A2' opacity='0.8'/%3E%3Ccircle cx='234.1' cy='363.2' r='2.7' fill='url(%23h)' opacity='0.3'/%3E%3Ccircle cx='283' cy='430.2' r='0.7' fill='%23EFD9A2' opacity='0.8'/%3E%3Ccircle cx='249.5' cy='624.1' r='2' fill='%23EFD9A2' opacity='0.3'/%3E%3Ccircle cx='134.5' cy='184.2' r='0.7' fill='%23EFD9A2' opacity='0.6'/%3E%3Ccircle cx='57.9' cy='201.9' r='5.6' fill='url(%23h)' opacity='0.7'/%3E%3Ccircle cx='80' cy='213.8' r='0.7' fill='%23EFD9A2' opacity='0.7'/%3E%3Ccircle cx='180' cy='73.9' r='3.9' fill='url(%23h)' opacity='0.7'/%3E%3Ccircle cx='132.3' cy='239.5' r='2.7' fill='url(%23h)' opacity='0.7'/%3E%3Ccircle cx='206.7' cy='87.5' r='0.7' fill='%23D4B26A' opacity='0.5'/%3E%3Ccircle cx='221.7' cy='609.6' r='1.2' fill='%23D4B26A' opacity='0.6'/%3E%3Ccircle cx='147.2' cy='8.3' r='0.6' fill='%23EFD9A2' opacity='0.4'/%3E%3Ccircle cx='122.5' cy='433.4' r='1.2' fill='%23EFD9A2' opacity='0.4'/%3E%3Ccircle cx='50.8' cy='166.8' r='0.9' fill='%23EFD9A2' opacity='0.5'/%3E%3Ccircle cx='295.2' cy='449.9' r='2.1' fill='url(%23h)' opacity='0.4'/%3E%3Ccircle cx='251.7' cy='300.7' r='1.1' fill='%23D4B26A' opacity='0.5'/%3E%3Ccircle cx='79.4' cy='615.2' r='1' fill='%23D4B26A' opacity='0.7'/%3E%3Ccircle cx='201.4' cy='259.1' r='1.8' fill='url(%23h)' opacity='0.5'/%3E%3C/svg%3E");
  --es-keystone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 44'%3E%3Cpath d='M14 34A26 26 0 0 1 66 34Z' fill='%230D2B23'/%3E%3Cg fill='none' stroke='%23D4B26A' stroke-linecap='round'%3E%3Cpath d='M14 34A26 26 0 0 1 66 34' stroke-width='1.3'/%3E%3Cpath d='M18 34A22 22 0 0 1 62 34' stroke-width='.6' stroke-opacity='.7'/%3E%3Cpath d='M33.5 31.3L19.7 25.6M35.1 29.1L24.4 18.4M37.3 27.5L31.6 13.7M40 27L40 12M42.7 27.5L48.4 13.7M44.9 29.1L55.6 18.4M46.5 31.3L60.3 25.6' stroke-width='1'/%3E%3Cpath d='M4 34H76M10 38H70M18 42H62' stroke-width='1'/%3E%3C/g%3E%3Cpath d='M33 34A7 7 0 0 1 47 34Z' fill='%23EFD9A2'/%3E%3C/svg%3E");
  --es-door-glass: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 800' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='d' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23FFF1D6' stop-opacity='0'/%3E%3Cstop offset='.55' stop-color='%23D9A54E' stop-opacity='.12'/%3E%3Cstop offset='1' stop-color='%238E5C1E' stop-opacity='.42'/%3E%3C/linearGradient%3E%3ClinearGradient id='e' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%235A3A12' stop-opacity='.34'/%3E%3Cstop offset='.2' stop-color='%235A3A12' stop-opacity='0'/%3E%3Cstop offset='.8' stop-color='%235A3A12' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%235A3A12' stop-opacity='.34'/%3E%3C/linearGradient%3E%3ClinearGradient id='s' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23FFF4D8'/%3E%3Cstop offset='1' stop-color='%23E7BE6E'/%3E%3C/linearGradient%3E%3ClinearGradient id='o' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23EFD9A2'/%3E%3Cstop offset='1' stop-color='%23A8873F'/%3E%3C/linearGradient%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%232F8466'/%3E%3Cstop offset='1' stop-color='%23164A3A'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='33' y='24' width='234' height='671' fill='url(%23d)'/%3E%3Crect x='33' y='24' width='234' height='671' fill='url(%23e)'/%3E%3Cg fill='url(%23g)' fill-opacity='.88'%3E%3Cpath d='M150 262L41 262L41 238.8Z'/%3E%3Cpath d='M150 262L41 213.5L41 182.8Z'/%3E%3Cpath d='M150 262L41 140.9L41 73.2Z'/%3E%3Cpath d='M150 262L75.3 32L125.8 32Z'/%3E%3Cpath d='M150 262L174.2 32L224.7 32Z'/%3E%3Cpath d='M150 262L259 73.2L259 140.9Z'/%3E%3Cpath d='M150 262L259 182.8L259 213.5Z'/%3E%3Cpath d='M150 262L259 238.8L259 262Z'/%3E%3C/g%3E%3Cg fill='%23F7D594' fill-opacity='.2'%3E%3Cpath d='M150 262L41 238.8L41 213.5Z'/%3E%3Cpath d='M150 262L41 182.8L41 140.9Z'/%3E%3Cpath d='M150 262L41 73.2L41 32L75.3 32Z'/%3E%3Cpath d='M150 262L125.8 32L174.2 32Z'/%3E%3Cpath d='M150 262L224.7 32L259 32L259 73.2Z'/%3E%3Cpath d='M150 262L259 140.9L259 182.8Z'/%3E%3Cpath d='M150 262L259 213.5L259 238.8Z'/%3E%3C/g%3E%3Cpath d='M72 262L77.9 232.2L94.8 206.8L120.2 189.9L150 184L179.8 189.9L205.2 206.8L222.1 232.2L228 262Z' fill='url(%23s)' fill-opacity='.9'/%3E%3Cpath d='M110 262L113 246.7L121.7 233.7L134.7 225L150 222L165.3 225L178.3 233.7L187 246.7L190 262Z' fill='url(%23o)'/%3E%3Cg fill='none' stroke-linejoin='miter'%3E%3Cpath d='M46 274V546M55 274V546M64 274V546M73 274V546M82 274V546M91 274V546M100 274V546M109 274V546M118 274V546M127 274V546M136 274V546M145 274V546M154 274V546M163 274V546M172 274V546M181 274V546M190 274V546M199 274V546M208 274V546M217 274V546M226 274V546M235 274V546M244 274V546M253 274V546' stroke='%23FFFDF6' stroke-opacity='.3' stroke-width='1.4' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M50 274V546M59 274V546M68 274V546M77 274V546M86 274V546M95 274V546M104 274V546M113 274V546M122 274V546M131 274V546M140 274V546M149 274V546M158 274V546M167 274V546M176 274V546M185 274V546M194 274V546M203 274V546M212 274V546M221 274V546M230 274V546M239 274V546M248 274V546M257 274V546' stroke='%236B4614' stroke-opacity='.16' stroke-width='1' vector-effect='non-scaling-stroke'/%3E%3C/g%3E%3Cpath d='M150 380L196 440L150 500L104 440Z' fill='url(%23g)' fill-opacity='.92'/%3E%3Cpath d='M150 404L177 440L150 476L123 440Z' fill='url(%23s)' fill-opacity='.85'/%3E%3Cpath d='M150 426L161 440L150 454L139 440Z' fill='url(%23o)'/%3E%3Cpath d='M49 694V664H79V634H109V604H191V634H221V664H251V694Z' fill='url(%23g)' fill-opacity='.86'/%3E%3Cpath d='M126 262L127.8 252.8L133 245L140.8 239.8L150 238L159.2 239.8L167 245L172.2 252.8L174 262Z' transform='translate(0 342)' fill='url(%23o)'/%3E%3Cg fill='none' stroke='%23D4B26A' stroke-linejoin='miter'%3E%3Cpath d='M73.7 245.8L41 238.8M78.7 230.3L41 213.5M86.9 216.2L41 182.8M97.8 204L41 140.9M111 194.5L41 73.2M125.9 187.8L75.3 32M141.8 184.4L125.8 32M158.2 184.4L174.2 32M174.1 187.8L224.7 32M189 194.5L259 73.2M202.2 204L259 140.9M213.1 216.2L259 182.8M221.3 230.3L259 213.5M226.3 245.8L259 238.8' stroke-width='1.3' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M72 262L77.9 232.2L94.8 206.8L120.2 189.9L150 184L179.8 189.9L205.2 206.8L222.1 232.2L228 262ZM110 262L113 246.7L121.7 233.7L134.7 225L150 222L165.3 225L178.3 233.7L187 246.7L190 262Z' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M113 246.7L77.9 232.2M121.7 233.7L94.8 206.8M134.7 225L120.2 189.9M150 222L150 184M165.3 225L179.8 189.9M178.3 233.7L205.2 206.8M187 246.7L222.1 232.2' stroke-width='1' stroke-opacity='.85' vector-effect='non-scaling-stroke'/%3E%3Crect x='41' y='32' width='218' height='654' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M33 262H267M33 272H267M33 548H267M33 558H267' stroke-width='1.6' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M150 380L196 440L150 500L104 440ZM150 404L177 440L150 476L123 440Z' stroke-width='1.4' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M49 694V664H79V634H109V604H191V634H221V664H251V694M67 694V676H97V646H127V620H173V646H203V676H233V694M150 620V694' stroke-width='1.3' vector-effect='non-scaling-stroke'/%3E%3C/g%3E%3C/svg%3E");
  --es-flare: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-200 -200 400 400'%3E%3Cdefs%3E%3CradialGradient id='g' gradientUnits='userSpaceOnUse' cx='0' cy='0' r='200'%3E%3Cstop offset='0' stop-color='%23FFF8E6'/%3E%3Cstop offset='.32' stop-color='%23EFD9A2' stop-opacity='.95'/%3E%3Cstop offset='.7' stop-color='%23D4B26A' stop-opacity='.45'/%3E%3Cstop offset='1' stop-color='%23D4B26A' stop-opacity='0'/%3E%3C/radialGradient%3E%3CradialGradient id='c'%3E%3Cstop offset='0' stop-color='%23FFFDF5'/%3E%3Cstop offset='.55' stop-color='%23FFEFC6' stop-opacity='.8'/%3E%3Cstop offset='1' stop-color='%23EFD9A2' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle r='60' fill='url(%23c)'/%3E%3Cg fill='none' stroke='url(%23g)' stroke-linecap='round'%3E%3Cpath d='M30 0L198 0M28.5 9.3L188.3 61.2M24.3 17.6L160.2 116.4M17.6 24.3L116.4 160.2M9.3 28.5L61.2 188.3M0 30L0 198M-9.3 28.5L-61.2 188.3M-17.6 24.3L-116.4 160.2M-24.3 17.6L-160.2 116.4M-28.5 9.3L-188.3 61.2M-30 0L-198 0M-28.5 -9.3L-188.3 -61.2M-24.3 -17.6L-160.2 -116.4M-17.6 -24.3L-116.4 -160.2M-9.3 -28.5L-61.2 -188.3M0 -30L0 -198M9.3 -28.5L61.2 -188.3M17.6 -24.3L116.4 -160.2M24.3 -17.6L160.2 -116.4M28.5 -9.3L188.3 -61.2' stroke-width='2.2'/%3E%3Cpath d='M39.5 6.3L148.2 23.5M35.6 18.2L99.8 50.8M28.3 28.3L106.1 106.1M18.2 35.6L50.8 99.8M6.3 39.5L23.5 148.2M-6.3 39.5L-17.5 110.6M-18.2 35.6L-68.1 133.7M-28.3 28.3L-79.2 79.2M-35.6 18.2L-133.7 68.1M-39.5 6.3L-110.6 17.5M-39.5 -6.3L-148.2 -23.5M-35.6 -18.2L-99.8 -50.8M-28.3 -28.3L-106.1 -106.1M-18.2 -35.6L-50.8 -99.8M-6.3 -39.5L-23.5 -148.2M6.3 -39.5L17.5 -110.6M18.2 -35.6L68.1 -133.7M28.3 -28.3L79.2 -79.2M35.6 -18.2L133.7 -68.1M39.5 -6.3L110.6 -17.5' stroke-width='1.2'/%3E%3Ccircle r='44' stroke-width='1.4'/%3E%3Ccircle r='52' stroke-width='.7'/%3E%3C/g%3E%3Cpath d='M0-34L7-7L34 0L7 7L0 34L-7 7L-34 0L-7-7Z' fill='%23FFFBEF'/%3E%3C/svg%3E");
  --es-coupe-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='7.2' rx='7.6' ry='1.5'/%3E%3Cpath d='M4.4 7.2Q5 12.6 12 12.9Q19 12.6 19.6 7.2M12 12.9V19.6M8.4 20.4Q12 19 15.6 20.4'/%3E%3C/g%3E%3Cpath d='M5.6 9Q7.4 12 12 12.1Q16.6 12 18.4 9Q12 10.2 5.6 9Z' fill='%23000' fill-opacity='.45'/%3E%3Cg fill='%23000'%3E%3Ccircle cx='10' cy='4.4' r='.8'/%3E%3Ccircle cx='13.6' cy='3.2' r='.65'/%3E%3Ccircle cx='12.2' cy='5.2' r='.55'/%3E%3C/g%3E%3C/svg%3E");
  --es-diamond-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2L22 12L12 22L2 12Z' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3Cpath d='M12 7L17 12L12 17L7 12Z' fill='%23000'/%3E%3C/svg%3E");
}
/* @recursos:fin */

/* =====================================================================
   PÁGINA · terciopelo esmeralda sobre mármol negro
   ===================================================================== */
html[data-theme="esmeralda"] {
  background-color: #060A08;
  background-image:
    radial-gradient(80vw 60vh at 50% -10%, rgba(31, 92, 74, .45), transparent 70%),
    radial-gradient(60vw 60vh at 100% 110%, rgba(212, 178, 106, .1), transparent 70%),
    linear-gradient(rgba(6, 10, 8, .4), rgba(6, 10, 8, .4)),
    var(--es-marble);
  background-size: auto, auto, auto, 900px auto;
  background-attachment: fixed;
}
html[data-theme="esmeralda"] body.inv { letter-spacing: .01em; }
html[data-theme="esmeralda"] ::selection { background: var(--es-oro); color: var(--es-hondo); }
html[data-theme="esmeralda"] :focus-visible { outline-color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-page { background: var(--es-velvet); }

/* secciones: terciopelo (impares) y mármol Portoro (alternas) */
html[data-theme="esmeralda"] .inv-section {
  background-image: var(--es-grain), var(--es-velvet);
  background-size: 180px 180px, auto, auto, auto, auto;
}
html[data-theme="esmeralda"] .inv-section.is-alt {
  background-color: var(--es-onix);
  /* el mármol se calma detrás del encabezado (las vetas no cruzan el título ni el texto) */
  background-image:
    radial-gradient(560px 300px at 50% 210px, rgba(10, 15, 13, .66), rgba(10, 15, 13, 0)),
    linear-gradient(180deg, rgba(10, 15, 13, .55), rgba(10, 15, 13, 0) 22%, rgba(10, 15, 13, 0) 78%, rgba(10, 15, 13, .55)),
    var(--es-marble),
    radial-gradient(90% 60% at 30% 20%, #18221E, #0A0F0D 70%);
  background-size: auto, auto, 640px auto, auto;
  background-position: center, center, 50% 30%, center;
}
html[data-theme="esmeralda"] .inv-section.is-alt:nth-of-type(4n) { background-position: center, center, 10% 80%, center; }
/* friso escalonado de oro arriba y abajo de cada banda de mármol */
html[data-theme="esmeralda"] .inv-section.is-alt::before,
html[data-theme="esmeralda"] .inv-section.is-alt::after,
html[data-theme="esmeralda"] .inv-footer::before {
  content: ''; position: absolute; left: 0; right: 0; height: 14px; pointer-events: none;
  background: var(--es-frieze) 0 0 / 40px 14px repeat-x;
  opacity: .85;
}
html[data-theme="esmeralda"] .inv-section.is-alt::before { top: 10px; }
html[data-theme="esmeralda"] .inv-section.is-alt::after { bottom: 10px; transform: scaleY(-1); }

/* ---------- tipografía ---------- */
html[data-theme="esmeralda"] .inv-head::before {
  content: ''; display: block; width: 168px; height: 54px; margin: 0 auto 18px;
  background: var(--es-fan) center / contain no-repeat;
}
html[data-theme="esmeralda"] .inv-eyebrow {
  font-family: var(--font-body); font-weight: 600; font-size: .7rem; letter-spacing: .4em; color: var(--es-oro);
}
html[data-theme="esmeralda"] .inv-title {
  font-family: var(--font-display); font-weight: 400;
  font-size: clamp(2.25rem, 9.6vw, 2.9rem); line-height: 1.1; letter-spacing: .015em; color: var(--ink);
}
html[data-theme="esmeralda"] .inv-head .inv-title { margin-bottom: .8rem; }
html[data-theme="esmeralda"] .inv-text { font-size: 1.04rem; line-height: 1.75; }
html[data-theme="esmeralda"] .inv-head .inv-text { font-size: 1.02rem; max-width: 26em; }
html[data-theme="esmeralda"] .inv-script { font-family: var(--font-script); }

/* ---------- tarjetas: paneles de terciopelo con filete doble y esquinas escalonadas ---------- */
html[data-theme="esmeralda"] .inv-card {
  background: var(--es-panel);
  border: 1px solid rgba(212, 178, 106, .55);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
html[data-theme="esmeralda"] .inv-card::after {
  content: ''; position: absolute; inset: 6px; z-index: 1; pointer-events: none;
  border: 24px solid transparent;
  border-image: var(--es-frame) 32 / 24px / 0 stretch;
  opacity: .9;
}

/* ---------- botones: oro champán con texto esmeralda; fantasma con filete de oro ---------- */
html[data-theme="esmeralda"] .inv-btn {
  border-radius: 2px; min-height: 50px; padding: 1em 1.7em .85em;
  border: 1px solid var(--es-oro);
  background: linear-gradient(180deg, #E6CC8E 0%, #D4B26A 48%, #C29E55 100%);
  color: var(--es-hondo);
  font-family: var(--font-body); font-weight: 600; font-size: .78rem; letter-spacing: .24em; text-transform: uppercase;
  box-shadow: 0 0 0 3px rgba(13, 43, 35, .9), 0 0 0 4px rgba(212, 178, 106, .5), 0 16px 28px -16px rgba(0, 0, 0, .9);
}
html[data-theme="esmeralda"] .inv-btn .inv-icon { width: 1.3em; height: 1.3em; margin-top: -.15em; }
html[data-theme="esmeralda"] .inv-btn--ghost {
  background: rgba(13, 43, 35, .35); color: var(--es-oro);
  box-shadow: none;
}
@media (hover: hover) {
  html[data-theme="esmeralda"] .inv-btn--ghost:hover { background: rgba(212, 178, 106, .1); }
}
html[data-theme="esmeralda"] .inv-btn--lg { min-height: 56px; font-size: .8rem; }
html[data-theme="esmeralda"] .inv-btn.is-draft { text-transform: none; letter-spacing: .02em; font-size: .88rem; color: var(--ink); }
html[data-theme="esmeralda"] a { color: var(--es-oro); }

/* =====================================================================
   HERO (split) · retrato en arco déco con sol naciente; nombres sobre terciopelo
   ===================================================================== */
html[data-theme="esmeralda"] .inv-hero {
  --es-aw: min(calc(100vw - 64px), 400px, 42svh);
  --es-at: calc(30px + env(safe-area-inset-top));
  color: var(--ink);
  background: var(--es-grain), var(--es-velvet);
  background-size: 180px 180px, auto, auto, auto, auto;
}
/* halo de rayos centrado en el arco (gira muy lento) */
html[data-theme="esmeralda"] .inv-hero--split::before {
  content: ''; position: absolute; left: 50%; z-index: 0; pointer-events: none;
  top: calc(var(--es-at) + 26px + var(--es-aw) / 2);
  width: 1000px; height: 1000px; margin: -500px 0 0 -500px;
  background: var(--es-rays) center / contain no-repeat;
  -webkit-mask-image: radial-gradient(closest-side, #000 26%, rgba(0, 0, 0, .55) 52%, transparent 88%);
  mask-image: radial-gradient(closest-side, #000 26%, rgba(0, 0, 0, .55) 52%, transparent 88%);
  opacity: 0; transform: scale(.9) rotate(-6deg);
  transition: opacity 2.2s var(--es-ease) .3s, transform 2.8s var(--es-ease) .3s;
}
html[data-theme="esmeralda"].is-revealing .inv-hero--split::before,
html[data-theme="esmeralda"].is-revealed .inv-hero--split::before { opacity: .55; transform: none; }
html[data-theme="esmeralda"].is-revealed .inv-hero--split::before { animation: esSol 140s linear 3s infinite; }
@keyframes esSol { to { transform: rotate(360deg); } }
/* clave del arco: abanico con base escalonada */
html[data-theme="esmeralda"] .inv-hero--split::after {
  content: ''; position: absolute; left: 50%; z-index: 3; pointer-events: none;
  top: calc(var(--es-at) - 22px); width: 84px; height: 46px; margin-left: -42px;
  background: var(--es-keystone) center / contain no-repeat;
  filter: drop-shadow(0 6px 10px rgba(0, 0, 0, .5));
}
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__media {
  width: var(--es-aw); height: auto; min-height: 0; aspect-ratio: 4 / 5;
  margin-top: calc(var(--es-at) + 26px);
  border-radius: 999px 999px 3px 3px; overflow: visible; z-index: 1;
  background: #0A1A15;
}
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__img { border-radius: 999px 999px 3px 3px; }
/* filetes dobles por fuera del arco y uno fino de oro dentro del retrato */
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__media::before {
  content: ''; position: absolute; inset: -9px; z-index: -1; pointer-events: none;
  border: 1px solid var(--es-oro); border-radius: 999px 999px 4px 4px;
  outline: 1px solid rgba(212, 178, 106, .5); outline-offset: 5px;
  box-shadow: 0 34px 70px -24px rgba(0, 0, 0, .8), 0 0 90px rgba(212, 178, 106, .14);
}
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__media::after {
  content: ''; position: absolute; inset: 9px; z-index: 3; pointer-events: none;
  border: 1px solid rgba(239, 217, 162, .72); border-radius: 999px 999px 2px 2px;
  box-shadow: 0 0 0 1px rgba(13, 43, 35, .25);
}
/* dos hojas de vidrio déco tapan el retrato y se abren al irse la apertura (§5: .is-revealing y .is-revealed) */
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__shade {
  z-index: 2; overflow: hidden; border-radius: 999px 999px 3px 3px;
  background: linear-gradient(180deg, rgba(8, 20, 16, .12), transparent 30%, transparent 62%, rgba(8, 20, 16, .5));
}
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__shade::before,
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__shade::after {
  content: ''; position: absolute; top: 0; bottom: 0; width: 50.4%;
  /* el mismo vitral de las puertas de la apertura, con su vidrio encendido: la puerta que se vuelve a abrir */
  background: var(--es-door-glass) center / 100% 100% no-repeat, linear-gradient(180deg, #FFECCF, #FBD9A4 55%, #E9C384);
  box-shadow: inset 0 0 0 5px #8F6A2E, inset 0 0 0 6px var(--es-oro), inset 0 0 34px rgba(60, 36, 8, .35);
  transition: transform 1.8s cubic-bezier(.66, 0, .2, 1) .1s;
  will-change: transform;
}
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__shade::before { left: 0; border-right: 1px solid var(--es-oro); }
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__shade::after { right: 0; border-left: 1px solid var(--es-oro); }
html[data-theme="esmeralda"].is-revealing .inv-hero--split .inv-hero__shade::before,
html[data-theme="esmeralda"].is-revealed .inv-hero--split .inv-hero__shade::before { transform: translateX(-102%); }
html[data-theme="esmeralda"].is-revealing .inv-hero--split .inv-hero__shade::after,
html[data-theme="esmeralda"].is-revealed .inv-hero--split .inv-hero__shade::after { transform: translateX(102%); }
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__img { transform: scale(1.12); transition: transform 3s var(--es-ease) .2s, opacity .8s; }
html[data-theme="esmeralda"].is-revealing .inv-hero--split .inv-hero__img,
html[data-theme="esmeralda"].is-revealed .inv-hero--split .inv-hero__img { transform: none; }

/* panel de terciopelo con los nombres: filete doble y esquinas escalonadas */
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__content {
  z-index: 4; margin-top: -54px; margin-bottom: 26px;
  width: calc(100% - 40px); max-width: 440px;
  padding: 46px 26px calc(76px + env(safe-area-inset-bottom));
  background: var(--es-grain), var(--es-panel);
  background-size: 180px 180px, auto, auto, auto;
  border: 1px solid rgba(212, 178, 106, .75); border-radius: 2px;
  outline: 1px solid rgba(212, 178, 106, .4); outline-offset: 5px;
  box-shadow: 0 46px 80px -34px rgba(0, 0, 0, .9);
}
html[data-theme="esmeralda"] .inv-hero--split .inv-hero__content::before {
  content: ''; position: absolute; inset: 7px; pointer-events: none;
  border: 24px solid transparent; border-image: var(--es-frame) 32 / 24px / 0 stretch;
}
html[data-theme="esmeralda"] .inv-hero__eyebrow { color: var(--es-oro); opacity: 1; letter-spacing: .3em; padding-left: .3em; font-size: .66rem; line-height: 1.7; margin-bottom: .9rem; text-wrap: balance; }
html[data-theme="esmeralda"] .inv-hero__title {
  font-family: var(--font-display); font-weight: 400; text-transform: uppercase;
  font-size: clamp(2.5rem, 12.4vw, 3.5rem); line-height: 1.04; letter-spacing: .07em;
  color: var(--es-marfil); margin: 0 0 .25em;
  text-shadow: 0 2px 24px rgba(0, 0, 0, .45);
}
html[data-theme="esmeralda"] .inv-amp {
  font-family: var(--font-script); text-transform: none; letter-spacing: 0;
  font-size: .92em; line-height: .9; margin: .06em 0 .02em; color: var(--es-oro);
  text-shadow: 0 0 22px rgba(212, 178, 106, .35);
}
html[data-theme="esmeralda"] .inv-hero__subtitle {
  font-family: var(--font-body); font-style: italic; font-weight: 300; font-size: 1.12rem; line-height: 1.5;
  color: var(--ink-soft); opacity: 1; max-width: 19rem; text-wrap: balance;
}
html[data-theme="esmeralda"] .inv-hero__date { gap: 12px; margin: 1.6rem auto 1rem; font-size: .68rem; letter-spacing: .3em; color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-hero__date-side { border-block: 3px double rgba(212, 178, 106, .75); padding: .75em 0 .6em; }
html[data-theme="esmeralda"] .inv-hero__date-day { font-family: var(--font-body); font-weight: 300; font-size: 3.5rem; line-height: .9; color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-hero__time { color: var(--ink-soft); opacity: 1; letter-spacing: .32em; margin-top: 2px; }
html[data-theme="esmeralda"] .inv-hero__place { color: var(--ink-soft); opacity: 1; letter-spacing: .08em; font-size: .92rem; }
html[data-theme="esmeralda"] .inv-hero__place .inv-icon { color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-hero__cue { color: var(--es-oro); }
html[data-theme="esmeralda"].is-revealed .inv-hero__cue { opacity: .9; }

/* pase del invitado: boleto de gala con filete doble */
html[data-theme="esmeralda"] .inv-guest {
  border-radius: 2px; padding: 14px 24px 13px;
  background: linear-gradient(180deg, rgba(10, 15, 13, .55), rgba(10, 15, 13, .3));
  border: 1px solid rgba(212, 178, 106, .7);
  outline: 1px solid rgba(212, 178, 106, .35); outline-offset: 3px;
  color: var(--ink); box-shadow: none;
}
html[data-theme="esmeralda"] .inv-guest__label { color: var(--es-oro); opacity: 1; letter-spacing: .34em; }
html[data-theme="esmeralda"] .inv-guest__name { font-family: var(--font-script); font-weight: 400; font-size: 2.1rem; line-height: 1.05; color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-guest__passes { color: var(--ink-soft); opacity: 1; letter-spacing: .06em; }
html[data-theme="esmeralda"] .inv-hero__guest { margin-top: 1.5rem; }

/* =====================================================================
   SECCIONES
   ===================================================================== */

/* medallón de oro (íconos de eventos, regalos, vestimenta, nota, álbum) */
html[data-theme="esmeralda"] .inv-event__icon,
html[data-theme="esmeralda"] .inv-event.has-img .inv-event__icon,
html[data-theme="esmeralda"] .inv-gift__icon,
html[data-theme="esmeralda"] .inv-hotel__icon,
html[data-theme="esmeralda"] .inv-dress__icon,
html[data-theme="esmeralda"] .inv-note__icon,
html[data-theme="esmeralda"] .inv-album__icon {
  color: var(--es-hondo); border: 0; border-radius: 50%;
  background: radial-gradient(circle at 34% 28%, #FFF0C8 0%, #E3C47E 30%, #C9A458 62%, #9C7A36 100%);
  box-shadow: 0 0 0 3px #0F3128, 0 0 0 4px rgba(212, 178, 106, .75), 0 14px 26px -12px rgba(0, 0, 0, .9);
}
html[data-theme="esmeralda"] .inv-gift__icon,
html[data-theme="esmeralda"] .inv-hotel__icon { width: 50px; height: 50px; margin: 2px 0 0 2px; }

/* quote — la frase entre dos pilastras de oro */
html[data-theme="esmeralda"] .inv-section--quote { padding-block: clamp(84px, 22vw, 128px); }
html[data-theme="esmeralda"] .inv-section--quote::before,
html[data-theme="esmeralda"] .inv-section--quote::after {
  content: ''; position: absolute; top: 48px; bottom: 48px; width: 7px; pointer-events: none;
  border-inline: 1px solid rgba(212, 178, 106, .45);
  -webkit-mask-image: linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);
  mask-image: linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);
}
html[data-theme="esmeralda"] .inv-section--quote::before { left: 14px; }
html[data-theme="esmeralda"] .inv-section--quote::after { right: 14px; }
html[data-theme="esmeralda"] .inv-quote { max-width: 23rem; padding-top: 74px; }
html[data-theme="esmeralda"] .inv-quote__mark {
  top: 0; width: 168px; height: 54px; font-size: 0; opacity: 1; transform: translateX(-50%);
  background: var(--es-fan) center / contain no-repeat;
}
html[data-theme="esmeralda"] .inv-quote__text p {
  font-family: var(--font-display); font-style: normal; font-weight: 400;
  font-size: clamp(1.6rem, 6.9vw, 2.05rem); line-height: 1.42; letter-spacing: .01em; color: var(--es-marfil);
}
html[data-theme="esmeralda"] .inv-quote__author { color: var(--es-oro); letter-spacing: .36em; font-weight: 600; margin-top: 1.6rem; }
html[data-theme="esmeralda"] .inv-quote__author::before { width: 56px; height: 4px; background: none; border-block: 1px solid var(--es-oro); margin-bottom: 1rem; }

/* countdown — cuatro vitrinas escalonadas */
html[data-theme="esmeralda"] .inv-countdown { gap: 9px; max-width: 384px; }
html[data-theme="esmeralda"] .inv-countdown__unit {
  padding: 24px 2px 18px; border-radius: 0; gap: 8px;
  background: var(--es-panel); border: 1px solid rgba(212, 178, 106, .55);
  box-shadow: 0 22px 34px -22px rgba(0, 0, 0, .95);
}
html[data-theme="esmeralda"] .inv-countdown__unit::before {
  left: 0; right: 0; top: 0; bottom: 0; height: auto; opacity: 1; background: none;
  border: 14px solid transparent; border-image: var(--es-frame-sm) 32 / 13px / 0 stretch; margin: 3px;
}
html[data-theme="esmeralda"] .inv-countdown__num { font-family: var(--font-body); font-weight: 300; font-size: clamp(1.9rem, 8.4vw, 2.45rem); letter-spacing: -.01em; color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-countdown__lbl { color: var(--es-oro); letter-spacing: .26em; font-size: .6rem; }
html[data-theme="esmeralda"] .inv-countdown__date { color: var(--ink-soft); letter-spacing: .28em; font-size: .74rem; margin-top: 1.8rem; }
html[data-theme="esmeralda"] .inv-countdown__done { font-family: var(--font-script); font-style: normal; font-size: 2.8rem; color: var(--es-oro); }

/* people — placas con separadores de rombo */
html[data-theme="esmeralda"] .inv-people { gap: 0; }
html[data-theme="esmeralda"] .inv-people__group { padding: 30px 0 28px; }
html[data-theme="esmeralda"] .inv-people__group + .inv-people__group::before {
  content: ''; position: absolute; top: -12px; left: 50%; width: 150px; height: 28px; margin-left: -75px;
  background: var(--es-ornament) center / contain no-repeat; opacity: .85;
}
html[data-theme="esmeralda"] .inv-people__spark { display: none; }
html[data-theme="esmeralda"] .inv-people__label { color: var(--es-oro); margin-bottom: .7rem; }
html[data-theme="esmeralda"] .inv-people__names li { font-family: var(--font-display); font-size: 1.62rem; line-height: 1.42; letter-spacing: .02em; color: var(--es-marfil); }

/* events — paneles con la foto en marco escalonado */
html[data-theme="esmeralda"] .inv-events { gap: 30px; }
html[data-theme="esmeralda"] .inv-event { padding: 0 0 30px; }
html[data-theme="esmeralda"] .inv-event:not(.has-img) { padding-top: 38px; }
html[data-theme="esmeralda"] .inv-event__media {
  z-index: 2; margin: 16px 16px 0; aspect-ratio: 16 / 10; background: #0A1A15;
  clip-path: polygon(0 12px, 12px 12px, 12px 0, calc(100% - 12px) 0, calc(100% - 12px) 12px, 100% 12px, 100% 100%, 0 100%);
}
html[data-theme="esmeralda"] .inv-event__media::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, transparent 55%, rgba(8, 20, 16, .55));
}
html[data-theme="esmeralda"] .inv-event__icon,
html[data-theme="esmeralda"] .inv-event.has-img .inv-event__icon { position: relative; z-index: 3; width: 62px; height: 62px; }
html[data-theme="esmeralda"] .inv-event.has-img .inv-event__icon { margin-top: -31px; }
html[data-theme="esmeralda"] .inv-event .inv-eyebrow { color: var(--es-oro); margin: 4px 0 .5rem; }
html[data-theme="esmeralda"] .inv-event__name { font-family: var(--font-display); font-size: 1.9rem; line-height: 1.15; color: var(--es-marfil); padding: 0 24px; }
html[data-theme="esmeralda"] .inv-event__meta { color: var(--ink-soft); font-size: .96rem; margin: 16px 26px 0; gap: 8px; }
html[data-theme="esmeralda"] .inv-event__meta .inv-icon { color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-event__actions { margin: 24px 18px 0; gap: 12px; }
html[data-theme="esmeralda"] .inv-event__actions .inv-btn { position: relative; z-index: 2; padding-inline: 1.15em; letter-spacing: .2em; }

/* timeline — línea doble de oro y rombos */
html[data-theme="esmeralda"] .inv-timeline__wrap { max-width: 392px; }
html[data-theme="esmeralda"] .inv-timeline { gap: 10px; }
html[data-theme="esmeralda"] .inv-timeline::before {
  left: 25px; width: 6px; background: none;
  border-inline: 1px solid rgba(212, 178, 106, .55);
}
html[data-theme="esmeralda"] .inv-timeline__dot {
  width: 56px; height: 56px; border-radius: 0; color: var(--es-oro);
  background: var(--es-panel); border: 1px solid var(--es-oro);
  transform: rotate(45deg) scale(.78);
  box-shadow: 0 0 0 5px #0D2B23, 0 0 0 6px rgba(212, 178, 106, .35);
}
html[data-theme="esmeralda"] .inv-timeline__dot .inv-icon { transform: rotate(-45deg) scale(1.2); }
html[data-theme="esmeralda"] .inv-timeline__time { color: var(--es-oro); font-weight: 600; letter-spacing: .24em; font-size: .72rem; }
html[data-theme="esmeralda"] .inv-timeline__title { font-family: var(--font-display); font-size: 1.55rem; line-height: 1.2; color: var(--es-marfil); margin-top: 4px; }
html[data-theme="esmeralda"] .inv-timeline__text { color: var(--ink-soft); font-size: .96rem; line-height: 1.6; margin-top: 4px; }

/* dresscode — tarjeta de etiqueta con letras de oro laminado */
html[data-theme="esmeralda"] .inv-dress {
  position: relative; padding: 44px 24px 38px;
  background: var(--es-panel); border: 1px solid rgba(212, 178, 106, .6); border-radius: 2px;
  box-shadow: var(--shadow);
}
html[data-theme="esmeralda"] .inv-dress::after {
  content: ''; position: absolute; inset: 6px; pointer-events: none;
  border: 24px solid transparent; border-image: var(--es-frame) 32 / 24px / 0 stretch;
}
html[data-theme="esmeralda"] .inv-dress__icon { width: 62px; height: 62px; margin-bottom: 18px; }
html[data-theme="esmeralda"] .inv-dress__code {
  font-family: var(--font-display); text-transform: uppercase; letter-spacing: .14em;
  font-size: clamp(2.5rem, 11.5vw, 3.2rem); line-height: 1.05; margin-bottom: .8rem;
  color: var(--es-oro); background: var(--es-foil); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
html[data-theme="esmeralda"] .inv-dress .inv-text { position: relative; z-index: 2; }
html[data-theme="esmeralda"] .inv-dress__label { color: var(--es-oro); letter-spacing: .32em; margin-top: 2rem; }
html[data-theme="esmeralda"] .inv-chip {
  position: relative; z-index: 2; border-radius: 2px; min-height: 40px;
  background: rgba(8, 18, 14, .55); border: 1px solid rgba(212, 178, 106, .45); color: var(--es-marfil); font-size: .9rem;
}
html[data-theme="esmeralda"] .inv-chip__swatch { box-shadow: 0 0 0 2px #0B1F19, 0 0 0 3px rgba(212, 178, 106, .8); }
html[data-theme="esmeralda"] .inv-chip--avoid { color: var(--ink-soft); }
html[data-theme="esmeralda"] .inv-chip--avoid .inv-icon { color: var(--es-oro); }

/* gallery — fotos enmarcadas como en un salón de espejos */
html[data-theme="esmeralda"] .inv-gallery__track { padding-top: 10px; padding-bottom: 18px; }
html[data-theme="esmeralda"] .inv-gallery__item { border-radius: 0; background: #0A1A15; }
html[data-theme="esmeralda"] .inv-gallery__track .inv-gallery__item {
  outline: 1px solid rgba(212, 178, 106, .55); outline-offset: 4px;
  box-shadow: 0 30px 50px -26px rgba(0, 0, 0, .95);
}
html[data-theme="esmeralda"] .inv-gallery__item::after {
  content: ''; position: absolute; inset: 10px; pointer-events: none;
  border: 1px solid rgba(239, 217, 162, .55);
}
html[data-theme="esmeralda"] .inv-gallery__dots { gap: 10px; margin-top: 14px; }
html[data-theme="esmeralda"] .inv-gallery__dots span { width: 7px; height: 7px; border-radius: 0; transform: rotate(45deg); background: rgba(212, 178, 106, .35); }
html[data-theme="esmeralda"] .inv-gallery__dots span.is-on { width: 7px; background: var(--es-oro); transform: rotate(45deg) scale(1.35); }
html[data-theme="esmeralda"] .inv-gallery__nav { border-radius: 2px; background: rgba(13, 43, 35, .85); border-color: rgba(212, 178, 106, .6); color: var(--es-oro); }

/* vip — boleto de gala en terciopelo con rayos de oro */
html[data-theme="esmeralda"] .inv-vip { filter: drop-shadow(0 28px 34px rgba(0, 0, 0, .7)); max-width: 350px; }
html[data-theme="esmeralda"] .inv-vip__main {
  color: var(--es-marfil); border-radius: 3px 3px 0 0;
  background:
    var(--es-rays) calc(100% + 170px) -190px / 420px 420px no-repeat,
    radial-gradient(120% 90% at 100% 0%, rgba(212, 178, 106, .2), transparent 60%),
    var(--es-panel);
}
html[data-theme="esmeralda"] .inv-vip__main::before {
  content: ''; position: absolute; inset: 8px 8px 0; pointer-events: none;
  border: 1px solid rgba(212, 178, 106, .55); border-bottom: 0;
}
html[data-theme="esmeralda"] .inv-vip__main::after { border-bottom-color: rgba(212, 178, 106, .6); }
html[data-theme="esmeralda"] .inv-vip__stub { color: var(--es-marfil); border-radius: 0 0 3px 3px; background: linear-gradient(180deg, #0F3128, #0A221B); }
html[data-theme="esmeralda"] .inv-vip__kicker { color: var(--es-oro); opacity: 1; }
html[data-theme="esmeralda"] .inv-vip__spark { color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-vip__event { font-family: var(--font-display); font-size: 1.15rem; letter-spacing: .06em; opacity: 1; color: var(--ink-soft); }
html[data-theme="esmeralda"] .inv-vip__name { font-size: 2.7rem; color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-vip__grid { column-gap: 10px; }
html[data-theme="esmeralda"] .inv-vip__grid dt { color: var(--es-oro); opacity: 1; letter-spacing: .16em; }
/* con pase son cuatro columnas (fecha, hora, lugares, mesa): a 360 px la hora chocaba con «lugares» */
html[data-theme="esmeralda"] .inv-vip__grid dd { font-family: var(--font-body); font-weight: 300; font-size: clamp(1rem, 4.6vw, 1.25rem); white-space: nowrap; }
html[data-theme="esmeralda"] .inv-vip__qr.is-generic { border-color: rgba(212, 178, 106, .6); background: rgba(212, 178, 106, .08); color: var(--es-oro); border-radius: 2px; }
/* los adornos comunes del pase (el trazo de la marca) pasan a ser déco: rombo en el encabezado, sol naciente en el QR */
html[data-theme="esmeralda"] .inv-vip__spark,
html[data-theme="esmeralda"] .inv-wishes__spark {
  width: 12px; height: 12px; flex: none; background: currentColor;
  -webkit-mask: var(--es-diamond-ico) center / contain no-repeat; mask: var(--es-diamond-ico) center / contain no-repeat;
}
html[data-theme="esmeralda"] .inv-vip__spark > *,
html[data-theme="esmeralda"] .inv-wishes__spark > *,
html[data-theme="esmeralda"] .inv-vip__qrspark > * { display: none; }
html[data-theme="esmeralda"] .inv-vip__qrspark { width: 70px; height: 40px; background: var(--es-keystone) center / contain no-repeat; animation: none; }
html[data-theme="esmeralda"] .inv-vip__hint { opacity: 1; color: var(--ink-soft); }

/* gifts y hotels */
html[data-theme="esmeralda"] .inv-gifts { gap: 20px; }
/* el contenido respira dentro del marco escalonado (antes el medallón y los botones rozaban sus filetes) */
html[data-theme="esmeralda"] .inv-gift, html[data-theme="esmeralda"] .inv-hotel { padding: 34px 30px 32px; column-gap: 18px; }
html[data-theme="esmeralda"] .inv-gift > *, html[data-theme="esmeralda"] .inv-hotel > * { position: relative; z-index: 2; }
html[data-theme="esmeralda"] .inv-gift__title, html[data-theme="esmeralda"] .inv-hotel__name { font-family: var(--font-display); font-size: 1.5rem; color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-gift__detail, html[data-theme="esmeralda"] .inv-hotel__detail { color: var(--ink-soft); font-size: .95rem; }
html[data-theme="esmeralda"] .inv-gift__actions .inv-btn, html[data-theme="esmeralda"] .inv-hotel__actions .inv-btn { letter-spacing: .16em; padding-inline: 1em; }
html[data-theme="esmeralda"] .inv-gift__copy {
  border-radius: 0; background: rgba(5, 12, 10, .6); border: 1px dashed rgba(212, 178, 106, .55);
  color: var(--es-oro-hi); letter-spacing: .02em; font-size: .86rem;
}

/* wishes — dos copas que brindan */
html[data-theme="esmeralda"] .inv-section--wishes .inv-head::before { width: 176px; height: 92px; background-image: var(--es-coupes); }
html[data-theme="esmeralda"] .inv-wishes__form > * { position: relative; z-index: 2; }
html[data-theme="esmeralda"] .inv-wishes__form, html[data-theme="esmeralda"] .inv-rsvp__form, html[data-theme="esmeralda"] .inv-playlist__form { padding: 42px 32px 36px; }
html[data-theme="esmeralda"] .inv-wish {
  border-radius: 2px; background: var(--es-panel); border: 1px solid rgba(212, 178, 106, .45);
}
html[data-theme="esmeralda"] .inv-wish:nth-child(3n + 2) { background: linear-gradient(180deg, #173F33, #11352B); }
html[data-theme="esmeralda"] .inv-wish::before { font-family: var(--font-script); color: var(--es-oro); opacity: .7; }
html[data-theme="esmeralda"] .inv-wish__msg p { font-family: var(--font-body); font-size: 1.08rem; color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-wish__meta strong { color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-wishes__spark { color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-wishes__empty { color: var(--ink-soft); letter-spacing: .02em; }

/* formularios */
html[data-theme="esmeralda"] .inv-field__label { color: var(--es-oro); letter-spacing: .16em; text-transform: uppercase; font-size: .7rem; }
html[data-theme="esmeralda"] .inv-input {
  border-radius: 2px; border: 1px solid rgba(212, 178, 106, .4);
  background: rgba(5, 12, 10, .55); color: var(--es-marfil);
}
html[data-theme="esmeralda"] .inv-input:focus { background: rgba(5, 12, 10, .75); border-color: var(--es-oro); box-shadow: 0 0 0 3px rgba(212, 178, 106, .2); }
html[data-theme="esmeralda"] .inv-input::placeholder { color: rgba(201, 196, 179, .72); }

/* faq — filetes de oro y rombos */
html[data-theme="esmeralda"] .inv-faq { gap: 0; border-top: 1px solid rgba(212, 178, 106, .4); }
html[data-theme="esmeralda"] .inv-faq__item { border-radius: 0; background: transparent; border: 0; border-bottom: 1px solid rgba(212, 178, 106, .4); }
html[data-theme="esmeralda"] .inv-faq__item.is-open { box-shadow: none; background: linear-gradient(90deg, transparent, rgba(212, 178, 106, .06), transparent); }
html[data-theme="esmeralda"] .inv-faq__q { font-family: var(--font-body); font-size: 1.08rem; font-weight: 400; letter-spacing: .02em; color: var(--es-marfil); padding: 18px 6px 16px 4px; }
html[data-theme="esmeralda"] .inv-faq__icon { border-radius: 0; width: 30px; height: 30px; transform: rotate(45deg); background: transparent; border: 1px solid var(--es-oro); color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-faq__icon .inv-icon { transform: rotate(-45deg); }
html[data-theme="esmeralda"] .inv-faq__item.is-open .inv-faq__icon { transform: rotate(180deg); background: var(--es-oro); color: var(--es-hondo); }
html[data-theme="esmeralda"] .inv-faq__a p { color: var(--ink-soft); padding: 0 8px 20px 4px; }

/* note */
html[data-theme="esmeralda"] .inv-note { border-radius: 2px; background: var(--es-panel); border: 1px solid rgba(212, 178, 106, .5); box-shadow: inset 3px 0 0 var(--es-oro); }
html[data-theme="esmeralda"] .inv-note__title { font-family: var(--font-display); color: var(--es-marfil); }

/* divider — rombo con líneas de velocidad */
html[data-theme="esmeralda"] .inv-section--divider { padding-block: 18px; }
html[data-theme="esmeralda"] .inv-divider.has-ornament { max-width: 300px; height: 56px; }

/* rsvp */
/* la confirmación siempre sobre mármol, con un resplandor de oro arriba (.inv-section: si no, ganaba .is-alt) */
html[data-theme="esmeralda"] .inv-section.inv-rsvp {
  background-color: var(--es-onix);
  background-image:
    radial-gradient(90% 50% at 50% 0%, rgba(212, 178, 106, .1), transparent 70%),
    radial-gradient(560px 300px at 50% 210px, rgba(10, 15, 13, .66), rgba(10, 15, 13, 0)),
    linear-gradient(180deg, rgba(10, 15, 13, .55), rgba(10, 15, 13, 0) 22%),
    var(--es-marble),
    radial-gradient(90% 60% at 30% 20%, #18221E, #0A0F0D 70%);
  background-size: auto, auto, auto, 640px auto, auto;
  background-position: center, center, center, 50% 30%, center;
}
html[data-theme="esmeralda"] .inv-rsvp__form > *, html[data-theme="esmeralda"] .inv-rsvp__done > * { position: relative; z-index: 2; }
html[data-theme="esmeralda"] .inv-rsvp__face { border-radius: 2px; border: 1px solid rgba(212, 178, 106, .4); background: rgba(5, 12, 10, .5); }
html[data-theme="esmeralda"] .inv-rsvp__face-ico { background: transparent; color: var(--es-oro); box-shadow: 0 0 0 1px rgba(212, 178, 106, .6); }
html[data-theme="esmeralda"] .inv-rsvp__face-txt strong { color: var(--es-marfil); font-weight: 600; }
html[data-theme="esmeralda"] .inv-rsvp__radio:checked + .inv-rsvp__face { border-color: var(--es-oro); background: rgba(212, 178, 106, .12); box-shadow: 0 0 0 1px var(--es-oro), 0 16px 30px -16px rgba(0, 0, 0, .9); }
html[data-theme="esmeralda"] .is-yes .inv-rsvp__radio:checked + .inv-rsvp__face .inv-rsvp__face-ico { background: var(--es-oro); color: var(--es-hondo); transform: scale(1.12) rotate(-14deg); }
/* «sí»: una copa de champagne (toma el color del texto); al elegirla se inclina como en un brindis */
html[data-theme="esmeralda"] .inv-rsvp__face-ico .inv-sparkle {
  width: 27px; height: 27px; background: currentColor;
  -webkit-mask: var(--es-coupe-ico) center / contain no-repeat; mask: var(--es-coupe-ico) center / contain no-repeat;
}
html[data-theme="esmeralda"] .inv-rsvp__face-ico .inv-sparkle > * { display: none; }
html[data-theme="esmeralda"] .inv-stepper { border-radius: 2px; border: 1px solid rgba(212, 178, 106, .35); background: rgba(5, 12, 10, .5); }
html[data-theme="esmeralda"] .inv-stepper__label { color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-stepper__btn { border-color: rgba(212, 178, 106, .55); background: transparent; color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-stepper__val { font-family: var(--font-body); font-weight: 300; color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-rsvp__seats i { border-color: rgba(212, 178, 106, .6); border-radius: 1px; }
html[data-theme="esmeralda"] .inv-rsvp__seats i.is-on { background: var(--es-oro); }
html[data-theme="esmeralda"] .inv-rsvp__done-title { font-family: var(--font-display); color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-rsvp__badge { background: var(--es-oro); color: var(--es-hondo); box-shadow: 0 0 0 8px rgba(212, 178, 106, .14), 0 16px 34px -12px rgba(0, 0, 0, .9); }
html[data-theme="esmeralda"] .inv-rsvp__badge.is-no { background: transparent; color: var(--es-oro); box-shadow: 0 0 0 1px var(--es-oro); }
html[data-theme="esmeralda"] .inv-rsvp__note { background: rgba(5, 12, 10, .5); }
html[data-theme="esmeralda"] .inv-rsvp__alt:hover, html[data-theme="esmeralda"] .inv-rsvp__change:hover { color: var(--es-oro); }

/* pie — mármol, friso y firma caligráfica */
html[data-theme="esmeralda"] .inv-footer {
  padding-top: 84px;
  background-color: var(--es-onix);
  background-image: radial-gradient(70% 50% at 50% 0%, rgba(31, 92, 74, .45), transparent 70%), var(--es-marble);
  background-size: auto, 640px auto;
}
html[data-theme="esmeralda"] .inv-footer::before { top: 12px; }
html[data-theme="esmeralda"] .inv-footer__orn { width: 84px; height: 46px; color: transparent; background: var(--es-keystone) center / contain no-repeat; }
html[data-theme="esmeralda"] .inv-footer__orn path { display: none; }
html[data-theme="esmeralda"] .inv-footer__text { font-size: 2.9rem; line-height: 1.1; color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-footer__date { color: var(--es-oro); letter-spacing: .36em; }
html[data-theme="esmeralda"] .inv-footer__credit { color: var(--ink-soft); }

/* barra de acciones: vidrio ahumado con filete de oro */
html[data-theme="esmeralda"] .inv-actionbar {
  border-radius: 4px; background: rgba(9, 24, 19, .86);
  border: 1px solid rgba(212, 178, 106, .45);
  box-shadow: 0 0 0 4px rgba(9, 24, 19, .35), 0 20px 44px -16px rgba(0, 0, 0, .9);
}
html[data-theme="esmeralda"] .inv-actionbar__btn { border-radius: 3px; color: var(--es-marfil); letter-spacing: .04em; }
html[data-theme="esmeralda"] .inv-actionbar__btn .inv-icon { color: var(--es-oro); }
html[data-theme="esmeralda"] .inv-actionbar__btn.is-primary { background: linear-gradient(180deg, #E6CC8E, #D4B26A 50%, #C29E55); color: var(--es-hondo); }
html[data-theme="esmeralda"] .inv-actionbar__btn.is-primary .inv-icon { color: var(--es-hondo); }
html[data-theme="esmeralda"] .inv-music { border-color: rgba(212, 178, 106, .5); background: rgba(9, 24, 19, .85); color: var(--es-marfil); }
html[data-theme="esmeralda"] .inv-sheet__panel { background: linear-gradient(180deg, #154236, #0E2E25); }
html[data-theme="esmeralda"] .inv-sheet__opt { border-radius: 3px; background: rgba(5, 12, 10, .45); border-color: rgba(212, 178, 106, .35); }
html[data-theme="esmeralda"] .inv-sheet__ico { border-radius: 2px; background: transparent; color: var(--es-oro); box-shadow: 0 0 0 1px rgba(212, 178, 106, .5); }

/* polvo de oro que sube despacio (capa .inv-fx) */
html[data-theme="esmeralda"] .inv-fx::before,
html[data-theme="esmeralda"] .inv-fx::after {
  content: ''; position: absolute; left: 0; right: 0; top: 0; height: calc(100% + 640px);
  background: var(--es-dust) 0 0 / 320px 640px repeat;
  opacity: 0; transition: opacity 2s ease 1s;
  will-change: transform;
}
html[data-theme="esmeralda"] .inv-fx::after { height: calc(100% + 960px); background-size: 480px 960px; background-position: 140px 200px; }
html[data-theme="esmeralda"].is-revealed .inv-fx::before { opacity: .4; animation: esDust 90s linear infinite; }
html[data-theme="esmeralda"].is-revealed .inv-fx::after { opacity: .28; animation: esDust2 140s linear infinite; }
@keyframes esDust { to { transform: translateY(-640px); } }
@keyframes esDust2 { to { transform: translateY(-960px); } }

/* destellos con degradado del motor (pase, confirmación, destello final): en oro */
html[data-theme="esmeralda"] .inv-sparkle stop:nth-child(1) { stop-color: #FFF0C8; }
html[data-theme="esmeralda"] .inv-sparkle stop:nth-child(2) { stop-color: #D4B26A; }
html[data-theme="esmeralda"] .inv-sparkle stop:nth-child(3) { stop-color: #A8873F; }

/* =====================================================================
   APERTURA · puertas déco (módulo intro-puertas) y respaldo «curtain»
   ===================================================================== */
html[data-theme="esmeralda"] .inv-intro {
  --paper-ink: #0D2B23;
  --puerta-marco-tam: 520px auto;
  --puerta-tinta: #D4B26A;
}
/* destello final: un estallido de sol déco detrás de los nombres (el mismo sol que espera en el hero), en lugar del
   trazo de la marca, que sobre el salón claro se leía como un brochazo dorado encima de los nombres */
html[data-theme="esmeralda"] .inv-intro__flash-spark { display: none; }
html[data-theme="esmeralda"] .inv-intro__flash::before {
  content: ''; position: absolute; left: 50%; top: 45%; z-index: 1; pointer-events: none;
  width: min(136vw, 780px); height: min(136vw, 780px); margin: calc(min(136vw, 780px) / -2) 0 0 calc(min(136vw, 780px) / -2);
  background: var(--es-flare) center / contain no-repeat;
  opacity: 0; transform: scale(.3) rotate(-24deg);
}
/* su capa se prepara mientras se abren las puertas (no en el cuadro del destello, que ya es el más cargado) */
html[data-theme="esmeralda"] .inv-intro.is-opening .inv-intro__flash::before { will-change: transform, opacity; }
html[data-theme="esmeralda"] .inv-intro.is-flash .inv-intro__flash::before { animation: esFlare 1s var(--es-ease) forwards; }
@keyframes esFlare {
  0% { opacity: 0; transform: scale(.3) rotate(-24deg); }
  34% { opacity: 1; transform: scale(1) rotate(0); }
  100% { opacity: 0; transform: scale(1.4) rotate(9deg); }
}
/* respaldo: telón de terciopelo esmeralda con galones de oro y placa de marfil */
html[data-theme="esmeralda"] .inv-intro--curtain { background: #050C09; }
html[data-theme="esmeralda"] .inv-intro--curtain .cur__plaque-in { color: #0D2B23; border-radius: 2px; }
html[data-theme="esmeralda"] .inv-intro--curtain .cur__plaque-in::before { border-radius: 0; }
html[data-theme="esmeralda"] .inv-intro--curtain .cur__title { font-family: var(--font-display); letter-spacing: .18em; opacity: 1; }
html[data-theme="esmeralda"] .inv-intro--curtain .cur__spark {
  width: 12px; height: 12px; background: currentColor; animation: none;
  -webkit-mask: var(--es-diamond-ico) center / contain no-repeat; mask: var(--es-diamond-ico) center / contain no-repeat;
}
html[data-theme="esmeralda"] .inv-intro--curtain .cur__spark > * { display: none; }
html[data-theme="esmeralda"] .inv-intro--curtain .inv-intro__cta,
html[data-theme="esmeralda"] .inv-intro--curtain .inv-intro__eyebrow { font-family: var(--font-body); }

/* =====================================================================
   ESCRITORIO
   ===================================================================== */
@media (min-width: 700px) {
  html[data-theme="esmeralda"] .inv-page { box-shadow: 0 0 0 1px rgba(212, 178, 106, .35), 0 0 0 7px rgba(10, 15, 13, .9), 0 0 0 8px rgba(212, 178, 106, .25), 0 50px 140px -30px rgba(0, 0, 0, .9); }
  html[data-theme="esmeralda"] .inv-hero { --es-at: 46px; }
  html[data-theme="esmeralda"] .inv-hero--split .inv-hero__content { padding-inline: 34px; }
  html[data-theme="esmeralda"] .inv-section--quote::before { left: 26px; }
  html[data-theme="esmeralda"] .inv-section--quote::after { right: 26px; }
}

/* =====================================================================
   MOVIMIENTO REDUCIDO · todo quieto y completo desde el primer cuadro
   ===================================================================== */
@media (prefers-reduced-motion: reduce) {
  html[data-theme="esmeralda"] .inv-hero--split::before { transition: none; animation: none !important; }
  html[data-theme="esmeralda"] .inv-hero--split .inv-hero__shade::before,
  html[data-theme="esmeralda"] .inv-hero--split .inv-hero__shade::after { transition: none; }
  html[data-theme="esmeralda"] .inv-hero--split .inv-hero__img { transition: opacity .4s; transform: none; }
  html[data-theme="esmeralda"] .inv-fx::before,
  html[data-theme="esmeralda"] .inv-fx::after { animation: none !important; transition: none; }
}

/* =====================================================================
   MODO ACCESIBLE (§14.3) · sin hojas sobre la foto, sin polvo, fondos lisos detrás del texto
   ===================================================================== */
html[data-theme="esmeralda"][data-access='1'] .inv-hero--split .inv-hero__shade::before,
html[data-theme="esmeralda"][data-access='1'] .inv-hero--split .inv-hero__shade::after { display: none; }
html[data-theme="esmeralda"][data-access='1'] .inv-hero--split .inv-hero__img { transform: none; transition: none; }
html[data-theme="esmeralda"][data-access='1'] .inv-hero--split::before { opacity: .35; transform: none; transition: none; animation: none; }
html[data-theme="esmeralda"][data-access='1'] .inv-section,
html[data-theme="esmeralda"][data-access='1'] .inv-hero { background-image: none; background-color: #0D2B23; }
html[data-theme="esmeralda"][data-access='1'] .inv-section.is-alt,
html[data-theme="esmeralda"][data-access='1'] .inv-footer { background-image: none; background-color: #0A0F0D; }
html[data-theme="esmeralda"][data-access='1'] .inv-card,
html[data-theme="esmeralda"][data-access='1'] .inv-dress,
html[data-theme="esmeralda"][data-access='1'] .inv-hero--split .inv-hero__content { background: #123A2F; }
html[data-theme="esmeralda"][data-access='1'] .inv-btn { letter-spacing: .1em; font-size: .92rem; }
html[data-theme="esmeralda"][data-access='1'] .inv-eyebrow { color: #E2C788; }
html[data-theme="esmeralda"][data-access='1'] .inv-dress__code { background: none; -webkit-text-fill-color: currentColor; color: #E2C788; }
/* botón de la apertura en teléfonos angostos: el texto cabe en una línea con Josefin Sans */
@media (max-width: 374px) {
  html[data-theme="esmeralda"] .inv-intro.is-puertas .inv-intro__cta { letter-spacing: .15em; padding-inline: 16px 18px; }
}
