/* ============================================================
   Tema «birrete» — graduación (demo graduacion-2026 · intro boarding).
   Concepto: «Honoris». Diploma en papel de seguridad (guilloché), laurel dorado y birrete;
   la intro es un pase de abordar «Vuelo 2026 · Destino: el futuro».
   Paleta: marino #14213D · oro #FCA311 · blanco · gris #E5E5E5 · borgoña #7B1E3A.
   Tipos: Cinzel (títulos y nombre) · Libre Baskerville (texto largo y cursivas) · Inter (interfaz).
   Contraste: el oro #FCA311 solo decora (sobre blanco no pasa AA); para texto dorado sobre claro
   se usa #9A6206 (5,1:1). Todo va acotado bajo html[data-theme="birrete"].
   ============================================================ */
:root {
  --bg: #FFFFFF;
  --bg-alt: #F4F5F8;
  --surface: #FFFFFF;
  --ink: #14213D;
  --ink-soft: #4B5670;
  --accent: #14213D;
  --accent-2: #FCA311;
  --accent-ink: #FFFFFF;
  --line: rgba(20, 33, 61, .13);
  --font-display: 'Cinzel', 'Times New Roman', Georgia, serif;
  --font-script: 'Cinzel', 'Times New Roman', Georgia, serif;
  --font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --radius: 12px;
  --shadow: 0 18px 38px -26px rgba(20, 33, 61, .55), 0 2px 6px -2px rgba(20, 33, 61, .08);
  --hero-overlay: linear-gradient(180deg, rgba(20, 33, 61, .1), rgba(20, 33, 61, .6));
  --hero-ink: #FFFFFF;
  --intro-bg: #14213D;
  --intro-ink: #F4F1E8;
  --seal: #7B1E3A;
  /* piezas propias del tema */
  --bi-navy: #14213D;
  --bi-navy-dk: #0C1630;
  --bi-gold: #FCA311;
  --bi-gold-dk: #9A6206;
  --bi-wine: #7B1E3A;
  --bi-ivory: #FAF7F0;
  --bi-serif: 'Libre Baskerville', Georgia, 'Times New Roman', serif;
  --bi-laurel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%23C9860A' stroke-width='1.1' stroke-linecap='round'%3E%3Cpath d='M43.75 81.45L40.48 80.72 37.29 79.68 34.22 78.36 31.28 76.75 28.5 74.88 25.91 72.75 23.53 70.4 21.38 67.83 19.47 65.08 17.83 62.16 16.47 59.1 15.39 55.92 14.62 52.66 14.16 49.35 14 46 14.16 42.65 14.62 39.34 15.39 36.08 16.47 32.9 17.83 29.84 19.47 26.92 21.38 24.17 23.53 21.6 25.91 19.25'/%3E%3Cpath d='M56.25 81.45L59.52 80.72 62.71 79.68 65.78 78.36 68.72 76.75 71.5 74.88 74.09 72.75 76.47 70.4 78.62 67.83 80.53 65.08 82.17 62.16 83.53 59.1 84.61 55.92 85.38 52.66 85.84 49.35 86 46 85.84 42.65 85.38 39.34 84.61 36.08 83.53 32.9 82.17 29.84 80.53 26.92 78.62 24.17 76.47 21.6 74.09 19.25'/%3E%3C/g%3E%3Cg fill='%23FCA311'%3E%3Cpath d='M39.07 80.3Q39.84 73.65 30.7 69.47Q32.44 79.37 39.07 80.3Z'/%3E%3Cpath d='M39.07 80.3Q33.94 77.12 27.84 83.45Q36.34 85.68 39.07 80.3Z'/%3E%3Cpath d='M31.59 76.93Q33.75 70.91 26.14 65.04Q25.61 74.63 31.59 76.93Z'/%3E%3Cpath d='M31.59 76.93Q27.5 72.87 20.45 77.44Q27.88 81.36 31.59 76.93Z'/%3E%3Cpath d='M25.06 71.96Q28.37 66.83 22.57 59.73Q20.01 68.53 25.06 71.96Z'/%3E%3Cpath d='M25.06 71.96Q22.14 67.3 14.61 70.03Q20.66 75.27 25.06 71.96Z'/%3E%3Cpath d='M19.83 65.64Q24 61.6 20.16 53.77Q15.89 61.37 19.83 65.64Z'/%3E%3Cpath d='M19.83 65.64Q18.13 60.69 10.56 61.6Q15.04 67.76 19.83 65.64Z'/%3E%3Cpath d='M16.17 58.3Q20.9 55.46 19.02 47.39Q13.44 53.51 16.17 58.3Z'/%3E%3Cpath d='M16.17 58.3Q15.66 53.36 8.46 52.57Q11.28 59.23 16.17 58.3Z'/%3E%3Cpath d='M14.26 50.32Q19.23 48.72 19.23 40.88Q12.77 45.32 14.26 50.32Z'/%3E%3Cpath d='M14.26 50.32Q14.85 45.66 8.39 43.39Q9.56 50.14 14.26 50.32Z'/%3E%3Cpath d='M14.21 42.12Q19.12 41.7 20.79 34.5Q13.91 37.2 14.21 42.12Z'/%3E%3Cpath d='M14.21 42.12Q15.75 37.96 10.29 34.49Q9.93 40.94 14.21 42.12Z'/%3E%3Cpath d='M16.02 34.12Q20.6 34.78 23.67 28.54Q16.79 29.55 16.02 34.12Z'/%3E%3Cpath d='M16.02 34.12Q18.31 30.63 14.05 26.3Q12.35 32.13 16.02 34.12Z'/%3E%3Cpath d='M19.59 26.73Q23.63 28.31 27.75 23.27Q21.26 22.73 19.59 26.73Z'/%3E%3Cpath d='M19.59 26.73Q22.42 24.04 19.46 19.18Q16.66 24.14 19.59 26.73Z'/%3E%3Cpath d='M24.74 20.35Q28.08 22.63 32.88 18.93Q27.1 17.07 24.74 20.35Z'/%3E%3Cpath d='M24.74 20.35Q27.88 18.5 26.21 13.47Q22.63 17.38 24.74 20.35Z'/%3E%3Cpath d='M25.91 19.25Q30.32 19.33 32.53 13.08Q26.14 14.85 25.91 19.25Z'/%3E%3Cpath d='M60.93 80.3Q64.28 86.1 74.11 84Q66.81 77.09 60.93 80.3Z'/%3E%3Cpath d='M60.93 80.3Q66.95 79.79 68.06 71.07Q59.91 74.35 60.93 80.3Z'/%3E%3Cpath d='M68.41 76.93Q72.79 81.61 81.48 77.53Q73.19 72.67 68.41 76.93Z'/%3E%3Cpath d='M68.41 76.93Q73.9 75.16 73.05 66.8Q66.17 71.62 68.41 76.93Z'/%3E%3Cpath d='M74.94 71.96Q80.01 75.36 87.21 69.69Q78.46 66.97 74.94 71.96Z'/%3E%3Cpath d='M74.94 71.96Q79.65 69.12 77.06 61.54Q71.71 67.51 74.94 71.96Z'/%3E%3Cpath d='M80.17 65.64Q85.6 67.7 91.06 60.89Q82.36 60.26 80.17 65.64Z'/%3E%3Cpath d='M80.17 65.64Q83.93 62 79.89 55.53Q76.22 62.21 80.17 65.64Z'/%3E%3Cpath d='M83.83 58.3Q89.3 59.04 92.88 51.57Q84.7 52.85 83.83 58.3Z'/%3E%3Cpath d='M83.83 58.3Q86.52 54.12 81.4 49.01Q79.44 55.98 83.83 58.3Z'/%3E%3Cpath d='M85.74 50.32Q90.94 49.83 92.64 42.18Q85.37 45.12 85.74 50.32Z'/%3E%3Cpath d='M85.74 50.32Q87.33 45.89 81.51 42.28Q81.19 49.12 85.74 50.32Z'/%3E%3Cpath d='M85.79 42.12Q90.46 40.56 90.39 33.16Q84.34 37.41 85.79 42.12Z'/%3E%3Cpath d='M85.79 42.12Q86.3 37.71 80.18 35.63Q81.35 41.99 85.79 42.12Z'/%3E%3Cpath d='M83.98 34.12Q87.93 31.69 86.29 24.94Q81.65 30.12 83.98 34.12Z'/%3E%3Cpath d='M83.98 34.12Q83.51 29.97 77.47 29.37Q79.89 34.94 83.98 34.12Z'/%3E%3Cpath d='M80.41 26.73Q83.5 23.69 80.57 17.87Q77.44 23.58 80.41 26.73Z'/%3E%3Cpath d='M80.41 26.73Q79.1 23.05 73.46 23.78Q76.85 28.35 80.41 26.73Z'/%3E%3Cpath d='M75.26 20.35Q77.42 16.93 73.53 12.27Q71.89 18.11 75.26 20.35Z'/%3E%3Cpath d='M75.26 20.35Q73.3 17.28 68.33 19.14Q72.37 22.57 75.26 20.35Z'/%3E%3Cpath d='M74.09 19.25Q73.86 14.85 67.47 13.08Q69.68 19.33 74.09 19.25Z'/%3E%3C/g%3E%3Cpath d='M45 84Q50 80 55 84M50 82 44 92M50 82 56 92' fill='none' stroke='%237B1E3A' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  --bi-laurel-lt: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%23E9B44C' stroke-width='1.1' stroke-linecap='round'%3E%3Cpath d='M43.75 81.45L40.48 80.72 37.29 79.68 34.22 78.36 31.28 76.75 28.5 74.88 25.91 72.75 23.53 70.4 21.38 67.83 19.47 65.08 17.83 62.16 16.47 59.1 15.39 55.92 14.62 52.66 14.16 49.35 14 46 14.16 42.65 14.62 39.34 15.39 36.08 16.47 32.9 17.83 29.84 19.47 26.92 21.38 24.17 23.53 21.6 25.91 19.25'/%3E%3Cpath d='M56.25 81.45L59.52 80.72 62.71 79.68 65.78 78.36 68.72 76.75 71.5 74.88 74.09 72.75 76.47 70.4 78.62 67.83 80.53 65.08 82.17 62.16 83.53 59.1 84.61 55.92 85.38 52.66 85.84 49.35 86 46 85.84 42.65 85.38 39.34 84.61 36.08 83.53 32.9 82.17 29.84 80.53 26.92 78.62 24.17 76.47 21.6 74.09 19.25'/%3E%3C/g%3E%3Cg fill='%23FCA311'%3E%3Cpath d='M39.07 80.3Q39.84 73.65 30.7 69.47Q32.44 79.37 39.07 80.3Z'/%3E%3Cpath d='M39.07 80.3Q33.94 77.12 27.84 83.45Q36.34 85.68 39.07 80.3Z'/%3E%3Cpath d='M31.59 76.93Q33.75 70.91 26.14 65.04Q25.61 74.63 31.59 76.93Z'/%3E%3Cpath d='M31.59 76.93Q27.5 72.87 20.45 77.44Q27.88 81.36 31.59 76.93Z'/%3E%3Cpath d='M25.06 71.96Q28.37 66.83 22.57 59.73Q20.01 68.53 25.06 71.96Z'/%3E%3Cpath d='M25.06 71.96Q22.14 67.3 14.61 70.03Q20.66 75.27 25.06 71.96Z'/%3E%3Cpath d='M19.83 65.64Q24 61.6 20.16 53.77Q15.89 61.37 19.83 65.64Z'/%3E%3Cpath d='M19.83 65.64Q18.13 60.69 10.56 61.6Q15.04 67.76 19.83 65.64Z'/%3E%3Cpath d='M16.17 58.3Q20.9 55.46 19.02 47.39Q13.44 53.51 16.17 58.3Z'/%3E%3Cpath d='M16.17 58.3Q15.66 53.36 8.46 52.57Q11.28 59.23 16.17 58.3Z'/%3E%3Cpath d='M14.26 50.32Q19.23 48.72 19.23 40.88Q12.77 45.32 14.26 50.32Z'/%3E%3Cpath d='M14.26 50.32Q14.85 45.66 8.39 43.39Q9.56 50.14 14.26 50.32Z'/%3E%3Cpath d='M14.21 42.12Q19.12 41.7 20.79 34.5Q13.91 37.2 14.21 42.12Z'/%3E%3Cpath d='M14.21 42.12Q15.75 37.96 10.29 34.49Q9.93 40.94 14.21 42.12Z'/%3E%3Cpath d='M16.02 34.12Q20.6 34.78 23.67 28.54Q16.79 29.55 16.02 34.12Z'/%3E%3Cpath d='M16.02 34.12Q18.31 30.63 14.05 26.3Q12.35 32.13 16.02 34.12Z'/%3E%3Cpath d='M19.59 26.73Q23.63 28.31 27.75 23.27Q21.26 22.73 19.59 26.73Z'/%3E%3Cpath d='M19.59 26.73Q22.42 24.04 19.46 19.18Q16.66 24.14 19.59 26.73Z'/%3E%3Cpath d='M24.74 20.35Q28.08 22.63 32.88 18.93Q27.1 17.07 24.74 20.35Z'/%3E%3Cpath d='M24.74 20.35Q27.88 18.5 26.21 13.47Q22.63 17.38 24.74 20.35Z'/%3E%3Cpath d='M25.91 19.25Q30.32 19.33 32.53 13.08Q26.14 14.85 25.91 19.25Z'/%3E%3Cpath d='M60.93 80.3Q64.28 86.1 74.11 84Q66.81 77.09 60.93 80.3Z'/%3E%3Cpath d='M60.93 80.3Q66.95 79.79 68.06 71.07Q59.91 74.35 60.93 80.3Z'/%3E%3Cpath d='M68.41 76.93Q72.79 81.61 81.48 77.53Q73.19 72.67 68.41 76.93Z'/%3E%3Cpath d='M68.41 76.93Q73.9 75.16 73.05 66.8Q66.17 71.62 68.41 76.93Z'/%3E%3Cpath d='M74.94 71.96Q80.01 75.36 87.21 69.69Q78.46 66.97 74.94 71.96Z'/%3E%3Cpath d='M74.94 71.96Q79.65 69.12 77.06 61.54Q71.71 67.51 74.94 71.96Z'/%3E%3Cpath d='M80.17 65.64Q85.6 67.7 91.06 60.89Q82.36 60.26 80.17 65.64Z'/%3E%3Cpath d='M80.17 65.64Q83.93 62 79.89 55.53Q76.22 62.21 80.17 65.64Z'/%3E%3Cpath d='M83.83 58.3Q89.3 59.04 92.88 51.57Q84.7 52.85 83.83 58.3Z'/%3E%3Cpath d='M83.83 58.3Q86.52 54.12 81.4 49.01Q79.44 55.98 83.83 58.3Z'/%3E%3Cpath d='M85.74 50.32Q90.94 49.83 92.64 42.18Q85.37 45.12 85.74 50.32Z'/%3E%3Cpath d='M85.74 50.32Q87.33 45.89 81.51 42.28Q81.19 49.12 85.74 50.32Z'/%3E%3Cpath d='M85.79 42.12Q90.46 40.56 90.39 33.16Q84.34 37.41 85.79 42.12Z'/%3E%3Cpath d='M85.79 42.12Q86.3 37.71 80.18 35.63Q81.35 41.99 85.79 42.12Z'/%3E%3Cpath d='M83.98 34.12Q87.93 31.69 86.29 24.94Q81.65 30.12 83.98 34.12Z'/%3E%3Cpath d='M83.98 34.12Q83.51 29.97 77.47 29.37Q79.89 34.94 83.98 34.12Z'/%3E%3Cpath d='M80.41 26.73Q83.5 23.69 80.57 17.87Q77.44 23.58 80.41 26.73Z'/%3E%3Cpath d='M80.41 26.73Q79.1 23.05 73.46 23.78Q76.85 28.35 80.41 26.73Z'/%3E%3Cpath d='M75.26 20.35Q77.42 16.93 73.53 12.27Q71.89 18.11 75.26 20.35Z'/%3E%3Cpath d='M75.26 20.35Q73.3 17.28 68.33 19.14Q72.37 22.57 75.26 20.35Z'/%3E%3Cpath d='M74.09 19.25Q73.86 14.85 67.47 13.08Q69.68 19.33 74.09 19.25Z'/%3E%3C/g%3E%3Cpath d='M45 84Q50 80 55 84M50 82 44 92M50 82 56 92' fill='none' stroke='%23F5D08A' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  --bi-cap: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 44' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 3 61 14 32 25 3 14Z' fill='%2314213D' stroke='%2314213D' stroke-width='1.6'/%3E%3Cpath d='M15 19V30C15 34 23 37 32 37S49 34 49 30V19L32 25Z' fill='%2314213D' stroke='%2314213D' stroke-width='1.6'/%3E%3Cpath d='M32 14 54 18V31' stroke='%23FCA311' stroke-width='1.8'/%3E%3Cpath d='M54 31 51 40H57Z' fill='%23FCA311' stroke='%23FCA311' stroke-width='1.2'/%3E%3Ccircle cx='32' cy='14' r='2' fill='%23FCA311'/%3E%3C/svg%3E");
  --bi-cap-lt: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 44' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 3 61 14 32 25 3 14Z' fill='%23F4F1E8' stroke='%23F4F1E8' stroke-width='1.6'/%3E%3Cpath d='M15 19V30C15 34 23 37 32 37S49 34 49 30V19L32 25Z' fill='%23F4F1E8' stroke='%23F4F1E8' stroke-width='1.6'/%3E%3Cpath d='M32 14 54 18V31' stroke='%23FCA311' stroke-width='1.8'/%3E%3Cpath d='M54 31 51 40H57Z' fill='%23FCA311' stroke='%23FCA311' stroke-width='1.2'/%3E%3Ccircle cx='32' cy='14' r='2' fill='%23FCA311'/%3E%3C/svg%3E");
  --ornament: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 60'%3E%3Cg fill='none' stroke='%23C9860A' stroke-width='1' stroke-linecap='round'%3E%3Cpath d='M116 33L111.83 31.96 107.67 30.94 103.5 29.95 99.33 29 95.17 28.11 91 27.3 86.83 26.57 82.67 25.94 78.5 25.41 74.33 24.99 70.17 24.68 66 24.5 61.83 24.43 57.67 24.49 53.5 24.66 49.33 24.94 45.17 25.32 41 25.8 36.83 26.36 32.67 27 28.5 27.7 24.33 28.44 20.17 29.21 16 30'/%3E%3Cpath d='M164 33L168.17 31.96 172.33 30.94 176.5 29.95 180.67 29 184.83 28.11 189 27.3 193.17 26.57 197.33 25.94 201.5 25.41 205.67 24.99 209.83 24.68 214 24.5 218.17 24.43 222.33 24.49 226.5 24.66 230.67 24.94 234.83 25.32 239 25.8 243.17 26.36 247.33 27 251.5 27.7 255.67 28.44 259.83 29.21 264 30'/%3E%3C/g%3E%3Cg fill='%23FCA311'%3E%3Cpath d='M110 31.51Q110.42 25.35 101.83 21.85Q103.86 30.9 110 31.51Z'/%3E%3Cpath d='M110 31.51Q104.97 29.16 100.02 35.58Q108.05 36.71 110 31.51Z'/%3E%3Cpath d='M98.5 28.82Q98.74 22.95 90.46 19.84Q92.64 28.4 98.5 28.82Z'/%3E%3Cpath d='M98.5 28.82Q93.64 26.71 89.11 32.97Q96.78 33.83 98.5 28.82Z'/%3E%3Cpath d='M87 26.6Q86.93 21.01 78.93 18.47Q81.41 26.49 87 26.6Z'/%3E%3Cpath d='M87 26.6Q82.29 24.84 78.29 31Q85.62 31.44 87 26.6Z'/%3E%3Cpath d='M75.5 25.09Q75.07 19.82 67.33 17.94Q70.21 25.36 75.5 25.09Z'/%3E%3Cpath d='M75.5 25.09Q70.93 23.74 67.55 29.83Q74.51 29.76 75.5 25.09Z'/%3E%3Cpath d='M64 24.45Q63.2 19.51 55.77 18.32Q59.04 25.1 64 24.45Z'/%3E%3Cpath d='M64 24.45Q59.59 23.52 56.86 29.5Q63.41 28.92 64 24.45Z'/%3E%3Cpath d='M52.5 24.72Q51.4 20.13 44.33 19.54Q47.88 25.68 52.5 24.72Z'/%3E%3Cpath d='M52.5 24.72Q48.29 24.15 46.16 29.97Q52.27 28.96 52.5 24.72Z'/%3E%3Cpath d='M41 25.8Q39.69 21.57 33.04 21.44Q36.74 26.98 41 25.8Z'/%3E%3Cpath d='M41 25.8Q37.02 25.53 35.37 31.1Q41.04 29.78 41 25.8Z'/%3E%3Cpath d='M29.5 27.52Q28.11 23.63 21.9 23.78Q25.57 28.79 29.5 27.52Z'/%3E%3Cpath d='M29.5 27.52Q25.78 27.43 24.46 32.7Q29.69 31.24 29.5 27.52Z'/%3E%3Cpath d='M18 29.62Q16.65 26.02 10.87 26.26Q14.36 30.86 18 29.62Z'/%3E%3Cpath d='M18 29.62Q14.54 29.59 13.4 34.51Q18.24 33.07 18 29.62Z'/%3E%3Cpath d='M16 30Q12.49 27.71 7.51 31.61Q13.57 33.42 16 30Z'/%3E%3Cpath d='M170 31.51Q172.47 37.16 181.71 36.29Q175.72 29.21 170 31.51Z'/%3E%3Cpath d='M170 31.51Q175.55 31.26 176.96 23.28Q169.32 25.99 170 31.51Z'/%3E%3Cpath d='M181.5 28.82Q183.71 34.27 192.53 33.69Q187.01 26.78 181.5 28.82Z'/%3E%3Cpath d='M181.5 28.82Q186.79 28.73 188.35 21.17Q181 23.55 181.5 28.82Z'/%3E%3Cpath d='M193 26.6Q194.83 31.88 203.23 31.76Q198.33 24.93 193 26.6Z'/%3E%3Cpath d='M193 26.6Q198.03 26.78 199.88 19.67Q192.78 21.57 193 26.6Z'/%3E%3Cpath d='M204.5 25.09Q205.88 30.21 213.83 30.65Q209.65 23.87 204.5 25.09Z'/%3E%3Cpath d='M204.5 25.09Q209.24 25.6 211.46 19Q204.63 20.33 204.5 25.09Z'/%3E%3Cpath d='M216 24.45Q216.92 29.37 224.38 30.38Q220.95 23.68 216 24.45Z'/%3E%3Cpath d='M216 24.45Q220.43 25.28 223.01 19.22Q216.47 19.97 216 24.45Z'/%3E%3Cpath d='M227.5 24.72Q228.01 29.4 234.95 30.88Q232.2 24.35 227.5 24.72Z'/%3E%3Cpath d='M227.5 24.72Q231.6 25.81 234.46 20.31Q228.27 20.54 227.5 24.72Z'/%3E%3Cpath d='M239 25.8Q239.2 30.22 245.6 32.02Q243.42 25.74 239 25.8Z'/%3E%3Cpath d='M239 25.8Q242.78 27.07 245.78 22.09Q239.97 21.93 239 25.8Z'/%3E%3Cpath d='M250.5 27.52Q250.51 31.66 256.41 33.6Q254.63 27.64 250.5 27.52Z'/%3E%3Cpath d='M250.5 27.52Q253.98 28.86 256.98 24.33Q251.56 23.95 250.5 27.52Z'/%3E%3Cpath d='M262 29.62Q261.94 33.46 267.4 35.36Q265.84 29.8 262 29.62Z'/%3E%3Cpath d='M262 29.62Q265.21 30.92 268.07 26.76Q263.04 26.32 262 29.62Z'/%3E%3Cpath d='M264 30Q266.43 33.42 272.49 31.61Q267.51 27.71 264 30Z'/%3E%3C/g%3E%3Cg transform='translate(121 11) scale(.6)' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 3 61 14 32 25 3 14Z' fill='%2314213D' stroke='%2314213D' stroke-width='2'/%3E%3Cpath d='M15 19V30C15 34 23 37 32 37S49 34 49 30V19L32 25Z' fill='%2314213D' stroke='%2314213D' stroke-width='2'/%3E%3Cpath d='M32 14 54 18V31' fill='none' stroke='%23FCA311' stroke-width='2.4'/%3E%3Cpath d='M54 31 51 40H57Z' fill='%23FCA311'/%3E%3C/g%3E%3C/svg%3E");
  --pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='40' viewBox='0 0 160 40'%3E%3Cg fill='none' stroke='%2314213D' stroke-opacity='.07' stroke-width='.8'%3E%3Cpath d='M0 10 L4 11.85 L8 13.53 L12 14.85 L16 15.71 L20 16 L24 15.71 L28 14.85 L32 13.53 L36 11.85 L40 10 L44 8.15 L48 6.47 L52 5.15 L56 4.29 L60 4 L64 4.29 L68 5.15 L72 6.47 L76 8.15 L80 10 L84 11.85 L88 13.53 L92 14.85 L96 15.71 L100 16 L104 15.71 L108 14.85 L112 13.53 L116 11.85 L120 10 L124 8.15 L128 6.47 L132 5.15 L136 4.29 L140 4 L144 4.29 L148 5.15 L152 6.47 L156 8.15 L160 10'/%3E%3Cpath d='M0 10 L4 8.15 L8 6.47 L12 5.15 L16 4.29 L20 4 L24 4.29 L28 5.15 L32 6.47 L36 8.15 L40 10 L44 11.85 L48 13.53 L52 14.85 L56 15.71 L60 16 L64 15.71 L68 14.85 L72 13.53 L76 11.85 L80 10 L84 8.15 L88 6.47 L92 5.15 L96 4.29 L100 4 L104 4.29 L108 5.15 L112 6.47 L116 8.15 L120 10 L124 11.85 L128 13.53 L132 14.85 L136 15.71 L140 16 L144 15.71 L148 14.85 L152 13.53 L156 11.85 L160 10'/%3E%3Cpath d='M0 36 L4 35.71 L8 34.85 L12 33.53 L16 31.85 L20 30 L24 28.15 L28 26.47 L32 25.15 L36 24.29 L40 24 L44 24.29 L48 25.15 L52 26.47 L56 28.15 L60 30 L64 31.85 L68 33.53 L72 34.85 L76 35.71 L80 36 L84 35.71 L88 34.85 L92 33.53 L96 31.85 L100 30 L104 28.15 L108 26.47 L112 25.15 L116 24.29 L120 24 L124 24.29 L128 25.15 L132 26.47 L136 28.15 L140 30 L144 31.85 L148 33.53 L152 34.85 L156 35.71 L160 36'/%3E%3Cpath d='M0 24 L4 24.29 L8 25.15 L12 26.47 L16 28.15 L20 30 L24 31.85 L28 33.53 L32 34.85 L36 35.71 L40 36 L44 35.71 L48 34.85 L52 33.53 L56 31.85 L60 30 L64 28.15 L68 26.47 L72 25.15 L76 24.29 L80 24 L84 24.29 L88 25.15 L92 26.47 L96 28.15 L100 30 L104 31.85 L108 33.53 L112 34.85 L116 35.71 L120 36 L124 35.71 L128 34.85 L132 33.53 L136 31.85 L140 30 L144 28.15 L148 26.47 L152 25.15 L156 24.29 L160 24'/%3E%3C/g%3E%3C/svg%3E");
  --bi-stars: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'%3E%3Cg fill='%23FCC96A'%3E%3Ccircle cx='66.18' cy='32.96' r='0.6' fill-opacity='0.28'/%3E%3Ccircle cx='106.89' cy='74.21' r='0.6' fill-opacity='0.66'/%3E%3Ccircle cx='45.22' cy='20.5' r='1.3' fill-opacity='0.28'/%3E%3Ccircle cx='21.42' cy='85.51' r='0.6' fill-opacity='0.68'/%3E%3Ccircle cx='125.08' cy='115.94' r='0.6' fill-opacity='0.51'/%3E%3Ccircle cx='80.16' cy='191.44' r='0.6' fill-opacity='0.5'/%3E%3Ccircle cx='29.57' cy='84.47' r='0.6' fill-opacity='0.51'/%3E%3Ccircle cx='111.57' cy='134.94' r='0.6' fill-opacity='0.51'/%3E%3Ccircle cx='126.67' cy='75.5' r='0.6' fill-opacity='0.5'/%3E%3Ccircle cx='122.85' cy='99.31' r='1.3' fill-opacity='0.6'/%3E%3Ccircle cx='93.4' cy='181.3' r='1' fill-opacity='0.38'/%3E%3Ccircle cx='156.52' cy='138.21' r='0.8' fill-opacity='0.29'/%3E%3Ccircle cx='61.65' cy='99.06' r='1' fill-opacity='0.58'/%3E%3Ccircle cx='59.28' cy='192.19' r='0.6' fill-opacity='0.48'/%3E%3Ccircle cx='35.67' cy='69.67' r='1.3' fill-opacity='0.44'/%3E%3Ccircle cx='188.71' cy='18.9' r='1' fill-opacity='0.4'/%3E%3Cpath d='M150 53Q150.6 57.4 155 58Q150.6 58.6 150 63Q149.4 58.6 145 58Q149.4 57.4 150 53Z' fill-opacity='.8'/%3E%3C/g%3E%3C/svg%3E");
}

/* ---------- lienzo general ---------- */
html[data-theme="birrete"] {
  background-color: #E9ECF2;
  background-image:
    radial-gradient(60vw 60vh at 0% 0%, rgba(20, 33, 61, .12), transparent 70%),
    radial-gradient(60vw 60vh at 100% 100%, rgba(252, 163, 17, .14), transparent 70%),
    var(--pattern);
}
html[data-theme="birrete"] ::selection { background: #FCD789; color: #14213D; }
html[data-theme="birrete"] .inv-fx { display: none; }

/* ============================================================
   HERO — foto arriba que se funde en marino y diploma superpuesto
   ============================================================ */
html[data-theme="birrete"] .inv-hero--split {
  background:
    var(--bi-stars),
    linear-gradient(180deg, var(--bi-navy) 0%, var(--bi-navy-dk) 100%);
  background-size: 200px 200px, auto;
}
html[data-theme="birrete"] .inv-hero--split .inv-hero__media {
  height: 50svh; min-height: 300px; border-radius: 0;
  background: linear-gradient(180deg, #24365E, var(--bi-navy));
}
html[data-theme="birrete"] .inv-hero--split .inv-hero__img { object-position: 50% 28%; }
html[data-theme="birrete"] .inv-hero__img.is-broken { opacity: 0; }
html[data-theme="birrete"] .inv-hero--split .inv-hero__shade {
  background: linear-gradient(180deg, rgba(20, 33, 61, .18) 0%, rgba(20, 33, 61, 0) 30%, rgba(20, 33, 61, .25) 62%, var(--bi-navy) 100%);
}
/* diploma */
html[data-theme="birrete"] .inv-hero--split .inv-hero__content {
  margin-top: -118px;
  width: calc(100% - 2 * var(--gutter) + 8px);
  padding: 30px 24px calc(80px + env(safe-area-inset-bottom));
  border-radius: 4px; border: 0;
  background: var(--pattern), linear-gradient(180deg, #FFFFFF, var(--bi-ivory));
  box-shadow:
    inset 0 0 0 7px #FFFFFF, inset 0 0 0 8px rgba(252, 163, 17, .95), inset 0 0 0 11px #FFFFFF, inset 0 0 0 12px rgba(20, 33, 61, .28),
    0 34px 60px -26px rgba(0, 0, 0, .65);
}
/* laurel con birrete sobre el nombre */
html[data-theme="birrete"] .inv-hero--split .inv-hero__content::before {
  content: ''; display: block; width: 80px; height: 80px; margin: -4px auto 0;
  background: var(--bi-cap) center 44% / 35px auto no-repeat, var(--bi-laurel) center / contain no-repeat;
}
html[data-theme="birrete"] .inv-hero__eyebrow { color: var(--bi-wine); opacity: 1; font-weight: 700; letter-spacing: .3em; }
html[data-theme="birrete"] .inv-hero__title {
  font-family: 'Cinzel', var(--font-display); font-weight: 700;
  font-size: clamp(2.3rem, 11.4vw, 3.1rem); line-height: 1.05; letter-spacing: .01em;
  color: var(--bi-navy); margin: .18em 0 .3em;
}
html[data-theme="birrete"] .inv-hero__subtitle {
  font-family: var(--bi-serif); font-style: italic; font-size: 1rem; line-height: 1.6; color: var(--ink-soft); opacity: 1; max-width: 20rem;
}
html[data-theme="birrete"] .inv-hero__date { color: var(--bi-wine); margin: 1.3rem auto .7rem; }
html[data-theme="birrete"] .inv-hero__date-side { border-color: rgba(252, 163, 17, .8); }
html[data-theme="birrete"] .inv-hero__date-day { font-family: 'Cinzel', var(--font-display); font-weight: 700; color: var(--bi-navy); font-size: 3.1rem; }
html[data-theme="birrete"] .inv-hero__time { color: var(--ink-soft); opacity: 1; }
html[data-theme="birrete"] .inv-hero__place { color: var(--ink); opacity: .9; }
html[data-theme="birrete"] .inv-hero__place .inv-icon { color: var(--bi-gold-dk); }
html[data-theme="birrete"] .inv-hero--split .inv-hero__cue { color: var(--ink-soft); bottom: 30px; }

/* pase del invitado: talón de abordar */
html[data-theme="birrete"] .inv-guest {
  background: var(--bi-ivory);
  border: 1.5px dashed rgba(154, 98, 6, .55);
  border-radius: 10px;
  box-shadow: none;
}
/* el talón es marfil también en la intro (polaroid/vinilo/confeti): tinta marino, no la clara de la intro */
html[data-theme="birrete"] .inv-intro__guest { color: var(--bi-navy); }
html[data-theme="birrete"] .inv-guest__label { color: var(--bi-wine); opacity: 1; font-weight: 700; }
html[data-theme="birrete"] .inv-guest__name { font-family: 'Cinzel', var(--font-display); font-weight: 700; font-size: 1.22rem; }
html[data-theme="birrete"] .inv-guest__passes { color: var(--ink-soft); opacity: 1; }

/* ============================================================
   SECCIONES
   ============================================================ */
html[data-theme="birrete"] .inv-section.is-alt { background: var(--pattern), var(--bg-alt); }
html[data-theme="birrete"] .inv-head > .inv-eyebrow {
  display: inline-flex; align-items: center; gap: 12px;
}
html[data-theme="birrete"] .inv-head > .inv-eyebrow::before,
html[data-theme="birrete"] .inv-head > .inv-eyebrow::after {
  content: ''; flex: none; width: 7px; height: 7px; transform: rotate(45deg);
  background: var(--bi-gold);
  box-shadow: 0 0 0 3px var(--bg), 0 0 0 4px rgba(252, 163, 17, .6);
}
html[data-theme="birrete"] .inv-section.is-alt .inv-head > .inv-eyebrow::before,
html[data-theme="birrete"] .inv-section.is-alt .inv-head > .inv-eyebrow::after { box-shadow: 0 0 0 3px var(--bg-alt), 0 0 0 4px rgba(252, 163, 17, .6); }
html[data-theme="birrete"] .inv-main .inv-eyebrow { color: var(--bi-wine); font-weight: 700; letter-spacing: .28em; }
html[data-theme="birrete"] .inv-main .inv-title {
  font-family: 'Cinzel', var(--font-display); font-weight: 600;
  font-size: clamp(1.75rem, 7.8vw, 2.35rem); line-height: 1.15; letter-spacing: .01em; color: var(--bi-navy);
}
html[data-theme="birrete"] .inv-text { color: var(--ink-soft); }
html[data-theme="birrete"] .inv-card { border-color: rgba(20, 33, 61, .12); }

/* botones */
html[data-theme="birrete"] .inv-btn { border-radius: 8px; letter-spacing: .06em; font-weight: 600; box-shadow: 0 12px 22px -14px rgba(20, 33, 61, .9), inset 0 -2px 0 rgba(252, 163, 17, .9); }
html[data-theme="birrete"] .inv-btn--ghost { box-shadow: none; border-color: rgba(20, 33, 61, .4); }
html[data-theme="birrete"] .inv-btn--wa:not(.inv-btn--ghost) { box-shadow: 0 12px 22px -14px rgba(18, 140, 74, .8); }

/* quote */
html[data-theme="birrete"] .inv-section--quote { padding-block: 86px; }
html[data-theme="birrete"] .inv-quote { padding-top: 72px; }
html[data-theme="birrete"] .inv-quote::before {
  content: ''; position: absolute; left: 50%; top: 0; width: 64px; height: 64px; transform: translateX(-50%);
  background: var(--bi-laurel) center / contain no-repeat;
}
html[data-theme="birrete"] .inv-quote__mark { display: none; }
html[data-theme="birrete"] .inv-quote__text p { font-family: var(--bi-serif); font-style: italic; font-size: clamp(1.28rem, 5.6vw, 1.6rem); line-height: 1.5; color: var(--bi-navy); }
html[data-theme="birrete"] .inv-quote__author { color: var(--bi-wine); }
html[data-theme="birrete"] .inv-quote__author::before { background: var(--bi-gold); width: 44px; }

/* story: foto en marco de diploma */
html[data-theme="birrete"] .inv-story__figure {
  width: min(80%, 320px);
  /* respaldo si la foto no carga: laurel con birrete sobre papel */
  background: var(--bi-cap) center 46% / 24% auto no-repeat, var(--bi-laurel) center / 56% auto no-repeat, linear-gradient(160deg, #EEF1F6, #F8F4EA);
}
html[data-theme="birrete"] .inv-story__figure img { object-position: 50% 60%; border-radius: 3px; aspect-ratio: 4 / 5; background: linear-gradient(160deg, #E4E8F0, #F6F1E4); box-shadow: 0 0 0 6px #FFFFFF, 0 0 0 7px rgba(20, 33, 61, .18), 0 26px 44px -24px rgba(20, 33, 61, .6); }
html[data-theme="birrete"] .inv-story__figure img.is-broken { opacity: 0; }
html[data-theme="birrete"] .inv-story__figure::after { inset: -16px; border-radius: 4px; border: 1px solid rgba(252, 163, 17, .9); }
html[data-theme="birrete"] .inv-story__glow { background: radial-gradient(closest-side, rgba(252, 163, 17, .22), transparent); }
html[data-theme="birrete"] .inv-story__body .inv-text { font-family: var(--bi-serif); font-size: .98rem; line-height: 1.85; color: #3E4863; text-align: left; }
html[data-theme="birrete"] .inv-story__body .inv-text:first-child::first-letter { font-family: 'Cinzel', var(--font-display); font-weight: 700; font-size: 3.3em; line-height: .82; padding: .06em .1em 0 0; color: var(--bi-wine); }
html[data-theme="birrete"] .inv-story__sig { font-family: 'Cinzel', var(--font-display); font-weight: 600; font-size: 1.5rem; letter-spacing: .06em; color: var(--bi-navy); }
html[data-theme="birrete"] .inv-story__sig::before {
  content: ''; display: block; width: 150px; height: 1px; margin: 0 auto 12px;
  background: linear-gradient(90deg, transparent, var(--bi-gold), transparent);
}

/* events */
html[data-theme="birrete"] .inv-event { border-radius: 6px; border-top: 3px solid var(--bi-gold); }
html[data-theme="birrete"] .inv-event:not(.has-img) { background: var(--pattern), #FFFFFF; }
html[data-theme="birrete"] .inv-event__media { background: linear-gradient(160deg, #24365E, var(--bi-navy)); }
html[data-theme="birrete"] .inv-event__media img.is-broken { opacity: 0; }
html[data-theme="birrete"] .inv-event__icon {
  color: var(--bi-gold); background: var(--bi-navy); border: 0;
  box-shadow: 0 0 0 4px #FFFFFF, 0 0 0 5px rgba(252, 163, 17, .75);
}
html[data-theme="birrete"] .inv-event.has-img .inv-event__icon { background: var(--bi-navy); box-shadow: 0 0 0 4px #FFFFFF, 0 0 0 5px rgba(252, 163, 17, .75), var(--shadow); }
html[data-theme="birrete"] .inv-event__name { font-family: 'Cinzel', var(--font-display); font-weight: 600; font-size: 1.36rem; color: var(--bi-navy); }
html[data-theme="birrete"] .inv-event__meta .inv-icon { color: var(--bi-gold-dk); }

/* timeline: puntos marino con ícono dorado */
html[data-theme="birrete"] .inv-timeline::before { background: linear-gradient(var(--bi-gold), rgba(252, 163, 17, .25)); width: 2px; left: 27px; }
html[data-theme="birrete"] .inv-timeline__dot { color: var(--bi-gold); background: var(--bi-navy); border: 0; box-shadow: 0 0 0 6px var(--bg), 0 0 0 7px rgba(252, 163, 17, .55); }
html[data-theme="birrete"] .inv-section.is-alt .inv-timeline__dot { box-shadow: 0 0 0 6px var(--bg-alt), 0 0 0 7px rgba(252, 163, 17, .55); }
html[data-theme="birrete"] .inv-timeline__time { color: var(--bi-wine); }
html[data-theme="birrete"] .inv-timeline__title { font-family: 'Cinzel', var(--font-display); font-weight: 600; font-size: 1.16rem; color: var(--bi-navy); }

/* dresscode */
html[data-theme="birrete"] .inv-dress__icon { color: var(--bi-gold); background: var(--bi-navy); border: 0; box-shadow: 0 0 0 4px var(--bg), 0 0 0 5px rgba(252, 163, 17, .7); }
html[data-theme="birrete"] .inv-section.is-alt .inv-dress__icon { box-shadow: 0 0 0 4px var(--bg-alt), 0 0 0 5px rgba(252, 163, 17, .7); }
html[data-theme="birrete"] .inv-dress__code { font-family: 'Cinzel', var(--font-display); font-weight: 600; font-size: clamp(1.4rem, 6.6vw, 1.85rem); color: var(--bi-navy); }
html[data-theme="birrete"] .inv-dress__label { color: var(--bi-wine); }
html[data-theme="birrete"] .inv-chip { border-radius: 8px; }

/* gallery: fotos con filete dorado */
html[data-theme="birrete"] .inv-gallery__item { border-radius: 4px; background: var(--bi-laurel) center / 46% auto no-repeat, linear-gradient(160deg, #E4E8F0, #F6F1E4); }
html[data-theme="birrete"] .inv-gallery__item::after { content: ''; position: absolute; inset: 7px; border: 1px solid rgba(255, 255, 255, .75); border-radius: 2px; pointer-events: none; }
html[data-theme="birrete"] .inv-gallery--grid { gap: 8px; }

/* wishes: dedicatorias de anuario */
html[data-theme="birrete"] .inv-wish { border-radius: 6px; border-left: 3px solid var(--bi-gold); }
html[data-theme="birrete"] .inv-wish::before { color: var(--bi-gold); opacity: .7; font-family: var(--bi-serif); }
html[data-theme="birrete"] .inv-wish:nth-child(3n + 2) { background: var(--bi-ivory); }
html[data-theme="birrete"] .inv-wish__msg p { font-family: var(--bi-serif); font-style: italic; font-size: 1.02rem; line-height: 1.65; color: var(--bi-navy); }
html[data-theme="birrete"] .inv-wishes__spark { fill: var(--bi-gold-dk); }

/* gifts */
html[data-theme="birrete"] .inv-gift__icon { color: var(--bi-gold); background: var(--bi-navy); border-radius: 50%; }
html[data-theme="birrete"] .inv-gift__title { font-family: 'Cinzel', var(--font-display); font-weight: 600; font-size: 1.18rem; color: var(--bi-navy); }
html[data-theme="birrete"] .inv-gift__copy { background: var(--bi-ivory); border-color: rgba(154, 98, 6, .45); }

/* faq y note (por si el cliente los usa) */
html[data-theme="birrete"] .inv-faq__q { font-family: 'Cinzel', var(--font-display); font-weight: 600; font-size: 1.02rem; }
html[data-theme="birrete"] .inv-faq__icon { background: var(--bi-navy); color: var(--bi-gold); }
html[data-theme="birrete"] .inv-note { background: var(--bi-ivory); border-color: rgba(252, 163, 17, .6); box-shadow: inset 3px 0 0 var(--bi-navy); }

/* divider */
html[data-theme="birrete"] .inv-divider.has-ornament { height: 60px; max-width: 300px; }

/* formularios */
html[data-theme="birrete"] .inv-input { border-radius: 8px; background: #FBFBFD; }
html[data-theme="birrete"] .inv-input:focus { border-color: var(--bi-navy); box-shadow: 0 0 0 4px rgba(252, 163, 17, .3); }

/* RSVP: bloque marino con el formulario como tarjeta de embarque */
html[data-theme="birrete"] .inv-section.inv-rsvp {
  background:
    var(--bi-stars),
    radial-gradient(90% 45% at 50% 0%, rgba(252, 163, 17, .16), transparent 70%),
    linear-gradient(180deg, var(--bi-navy), var(--bi-navy-dk));
  background-size: 200px 200px, auto, auto;
}
html[data-theme="birrete"] .inv-rsvp .inv-head::before {
  content: ''; display: block; width: 76px; height: 76px; margin: 0 auto 16px;
  background: var(--bi-cap-lt) center 44% / 34px auto no-repeat, var(--bi-laurel-lt) center / contain no-repeat;
}
html[data-theme="birrete"] .inv-rsvp .inv-head .inv-eyebrow { color: #FCD789; }
html[data-theme="birrete"] .inv-rsvp .inv-head > .inv-eyebrow::before,
html[data-theme="birrete"] .inv-rsvp .inv-head > .inv-eyebrow::after { box-shadow: 0 0 0 3px var(--bi-navy), 0 0 0 4px rgba(252, 163, 17, .6); }
html[data-theme="birrete"] .inv-rsvp .inv-head .inv-title { color: #FFFFFF; }
html[data-theme="birrete"] .inv-rsvp .inv-head .inv-text { color: #D3D9E6; }
html[data-theme="birrete"] .inv-rsvp__guest { background: rgba(255, 255, 255, .06); border-color: rgba(252, 163, 17, .6); color: #FFFFFF; }
html[data-theme="birrete"] .inv-rsvp__guest .inv-guest__label { color: #FCD789; }
html[data-theme="birrete"] .inv-rsvp__guest .inv-guest__passes { color: #D3D9E6; }
html[data-theme="birrete"] .inv-rsvp__seats i { border-color: rgba(252, 163, 17, .75); }
html[data-theme="birrete"] .inv-rsvp__seats i.is-on { background: var(--bi-gold); }
html[data-theme="birrete"] .inv-rsvp__form, html[data-theme="birrete"] .inv-rsvp__done, html[data-theme="birrete"] .inv-rsvp__closed { border-radius: 8px; border-top: 3px solid var(--bi-gold); }
html[data-theme="birrete"] .inv-rsvp__face { border-radius: 10px; }
html[data-theme="birrete"] .inv-rsvp__done-title { font-family: 'Cinzel', var(--font-display); font-weight: 700; }

/* pie marino con laurel */
html[data-theme="birrete"] .inv-footer {
  background:
    var(--bi-stars),
    linear-gradient(180deg, var(--bi-navy-dk), #08101F);
  background-size: 200px 200px, auto;
  border-top: 1px solid rgba(252, 163, 17, .35);
}
html[data-theme="birrete"] .inv-footer__orn { width: 110px; height: 110px; margin-bottom: 6px; background: var(--bi-cap-lt) center 44% / 46px auto no-repeat, var(--bi-laurel-lt) center / contain no-repeat; }
html[data-theme="birrete"] .inv-footer__orn path { display: none; }
html[data-theme="birrete"] .inv-footer__text { font-family: 'Cinzel', var(--font-display); font-weight: 700; font-size: 2.1rem; letter-spacing: .04em; color: #FFFFFF; }
html[data-theme="birrete"] .inv-footer__date { color: #FCD789; }
html[data-theme="birrete"] .inv-footer__credit { color: #C9D0DF; }
html[data-theme="birrete"] .inv-footer__credit:hover { color: #FFFFFF; border-color: rgba(255, 255, 255, .2); }
html[data-theme="birrete"] .inv-footer__brand { color: #FFFFFF; }
/* Letra grande, legales e idiomas sobre el marino: --ink-soft (#4B5670) es para fondo claro (2,2–2,6:1 aquí);
   #C9D0DF da ~11:1 y el actual/hover van en blanco */
html[data-theme="birrete"] .inv-footer__access,
html[data-theme="birrete"] .inv-footer__legal a,
html[data-theme="birrete"] .inv-lang__item,
html[data-theme="birrete"] .inv-lang__sep { color: #C9D0DF; }
html[data-theme="birrete"] .inv-footer__access { border-color: rgba(255, 255, 255, .25); }
html[data-theme="birrete"] .inv-footer__access:hover,
html[data-theme="birrete"] .inv-footer__legal a:hover,
html[data-theme="birrete"] .inv-lang__item:hover,
html[data-theme="birrete"] .inv-lang__item.is-current { color: #FFFFFF; }
html[data-theme="birrete"] .inv-footer__access:hover { border-color: rgba(255, 255, 255, .5); }
html[data-theme="birrete"] .inv-footer .inv-lang { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .2); }
html[data-theme="birrete"] .inv-footer__std { color: #FCD789; }

/* barra de acciones */
html[data-theme="birrete"] .inv-actionbar__btn.is-primary { box-shadow: inset 0 -3px 0 var(--bi-gold), 0 8px 18px -8px rgba(20, 33, 61, .9); }

/* ============================================================
   INTRO «boarding» — cielo nocturno, tablero de salidas y pase «Vuelo 2026»
   ============================================================ */
html[data-theme="birrete"] .inv-intro--boarding { background: var(--bi-navy); }
html[data-theme="birrete"] .inv-intro--boarding .inv-intro__bg {
  background-image:
    radial-gradient(70% 40% at 50% 30%, rgba(252, 163, 17, .16), transparent 70%),
    radial-gradient(120% 80% at 50% 50%, transparent 50%, rgba(5, 10, 24, .7) 100%),
    var(--bi-stars),
    linear-gradient(180deg, #1A2B52 0%, var(--bi-navy) 45%, var(--bi-navy-dk) 100%);
  background-size: auto, auto, 200px 200px, auto;
}
html[data-theme="birrete"] .inv-intro--boarding .inv-intro__bg::after { display: none; }
/* laurel enorme de marca de agua */
html[data-theme="birrete"] .inv-intro--boarding::before {
  content: ''; position: absolute; z-index: 0; left: 50%; top: 52%; width: min(150vw, 720px); aspect-ratio: 1;
  transform: translate(-50%, -50%); pointer-events: none; opacity: .09;
  background: var(--bi-laurel-lt) center / contain no-repeat;
}
/* ruta de vuelo punteada */
html[data-theme="birrete"] .inv-intro--boarding::after {
  content: ''; position: absolute; z-index: 0; left: -10%; right: -10%; top: 8%; height: 34vh; pointer-events: none;
  border-top: 2px dashed rgba(252, 201, 106, .35); border-radius: 50%;
}
html[data-theme="birrete"] .inv-intro--boarding .inv-intro__eyebrow { color: #FCD789; opacity: .9; }
html[data-theme="birrete"] .brd { --ink-b: #FFF3D6; position: relative; z-index: 1; }
html[data-theme="birrete"] .brd__board {
  background: linear-gradient(180deg, #0F1B36, #081127);
  box-shadow: inset 0 0 0 1px rgba(252, 163, 17, .28), inset 0 1px 0 rgba(255, 255, 255, .08), 0 20px 36px -18px rgba(0, 0, 0, .8);
}
html[data-theme="birrete"] .brd__board-head, html[data-theme="birrete"] .brd__board-foot { color: #FCC96A; }
html[data-theme="birrete"] .flap { background: linear-gradient(180deg, #1C2C50 0 49.5%, #15223F 50.5% 100%); color: #FFF3D6; }
html[data-theme="birrete"] .brd__pass {
  background:
    radial-gradient(90% 60% at 100% 100%, rgba(252, 163, 17, .1), transparent 70%),
    var(--pattern),
    linear-gradient(170deg, #FFFFFF, var(--bi-ivory));
}
/* tinta de las piezas de papel (pase, y sobre/etiqueta/nubes si se usa otra intro): marino */
html[data-theme="birrete"] .inv-intro { --paper-ink: var(--bi-navy); }
html[data-theme="birrete"] .brd__route span { opacity: 1; color: var(--ink-soft); }
html[data-theme="birrete"] .brd__foot .bc { opacity: .9; }
html[data-theme="birrete"] .brd__head { background: var(--bi-navy); color: #FCD789; border-bottom: 2px solid var(--bi-gold); }
html[data-theme="birrete"] .brd__spark { fill: var(--bi-gold); }
html[data-theme="birrete"] .brd__route strong { font-family: 'Cinzel', var(--font-display); font-weight: 700; color: var(--bi-navy); }
html[data-theme="birrete"] .brd__plane { color: var(--bi-gold-dk); }
html[data-theme="birrete"] .brd__cell strong { font-family: 'Cinzel', var(--font-display); font-weight: 700; color: var(--bi-navy); }
html[data-theme="birrete"] .brd__cell.is-wide strong { font-family: 'Cinzel', var(--font-display); font-weight: 700; font-size: calc(var(--w) * .064); line-height: 1.18; color: var(--bi-navy); white-space: normal; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
html[data-theme="birrete"] .brd__route small, html[data-theme="birrete"] .brd__cell small { color: var(--bi-wine); opacity: .85; }
html[data-theme="birrete"] .brd__foot > span:last-child { font-family: var(--bi-serif); color: var(--bi-navy); }
html[data-theme="birrete"] .brd__stamp { font-family: 'Cinzel', var(--font-display); }
html[data-theme="birrete"] .brd__jet { color: var(--bi-gold); }
html[data-theme="birrete"] .brd__jet::before { background: linear-gradient(90deg, transparent, rgba(252, 163, 17, .5)); }
/* botón dorado */
html[data-theme="birrete"] .inv-intro--boarding .inv-intro__cta {
  background: linear-gradient(180deg, #FFC24D, var(--bi-gold) 60%, #E08E00);
  color: var(--bi-navy); font-weight: 700;
  box-shadow: 0 0 0 1px rgba(255, 226, 160, .7), 0 16px 30px -12px rgba(0, 0, 0, .7), inset 0 1px 0 rgba(255, 255, 255, .6);
}
html[data-theme="birrete"] .inv-intro--boarding .inv-intro__cta-ring { animation-name: biCtaRing; }
@keyframes biCtaRing { 0% { box-shadow: 0 0 0 0 rgba(252, 163, 17, .55); } 80%, 100% { box-shadow: 0 0 0 16px transparent; } }
html[data-theme="birrete"] .inv-intro--boarding .inv-intro__cta:focus-visible { outline-color: #FCD789; }

/* ============================================================
   ESCRITORIO Y MOVIMIENTO REDUCIDO
   ============================================================ */
@media (min-width: 700px) {
  html[data-theme="birrete"] .inv-page { box-shadow: 0 0 0 1px rgba(20, 33, 61, .12), 0 50px 120px -40px rgba(20, 33, 61, .5); }
  /* a los lados, cielo nocturno marino: el diploma resalta como sobre un escritorio */
  html[data-theme="birrete"] {
    background-color: #0B1428;
    background-image:
      radial-gradient(50vw 60vh at 50% 0%, rgba(252, 163, 17, .1), transparent 70%),
      radial-gradient(90vw 90vh at 50% 50%, transparent 40%, rgba(3, 7, 18, .6) 100%),
      var(--bi-stars),
      var(--bi-stars),
      linear-gradient(180deg, #172850, #0B1428);
    background-size: auto, auto, 200px 200px, 310px 310px, auto;
    background-position: 0 0, 0 0, 0 0, 90px 140px, 0 0;
  }
  html[data-theme="birrete"] body.inv::before,
  html[data-theme="birrete"] body.inv::after {
    content: ''; position: fixed; top: 50%; width: 300px; height: 300px; pointer-events: none;
    background: var(--bi-laurel-lt) center / contain no-repeat; opacity: .42;
    filter: drop-shadow(0 0 18px rgba(252, 163, 17, .35));
  }
  html[data-theme="birrete"] body.inv::before { left: calc(50% - 600px); transform: translateY(-50%) rotate(-12deg); }
  html[data-theme="birrete"] body.inv::after { right: calc(50% - 600px); transform: translateY(-50%) rotate(12deg); }
  html[data-theme="birrete"] .inv-hero--split .inv-hero__media { height: 50vh; }
  html[data-theme="birrete"] .inv-hero__title { font-size: 3.4rem; }
}
