    :root{
      --cream:#fffaf2;
      --paper:#fffdf8;
      --rose:#8f4f5b;
      --rose-soft:#efd0d5;
      --lavender:#eee7f7;
      --gold:#b98b38;
      --sage:#dfe8d7;
      --ink:#4b3832;
      --muted:#806b61;
      --line:rgba(96,68,54,.18);
      --shadow:0 18px 50px rgba(82,55,42,.14);
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family:Georgia, 'Times New Roman', serif;
      color:var(--ink);
      background:
        radial-gradient(circle at 12% 8%, rgba(239,208,213,.9), transparent 28%),
        radial-gradient(circle at 85% 16%, rgba(223,232,215,.9), transparent 30%),
        linear-gradient(135deg,#fffaf2,#f7eee5 50%,#f0e3d9);
      min-height:100vh;
    }
    body:before{
      content:""; position:fixed; inset:0; pointer-events:none; opacity:.26;
      background-image:linear-gradient(rgba(75,56,50,.035) 1px, transparent 1px),linear-gradient(90deg,rgba(75,56,50,.035) 1px, transparent 1px);
      background-size:34px 34px;
    }
    .layout{display:grid;grid-template-columns:300px 1fr;min-height:100vh;position:relative}
    aside{
      position:sticky;top:0;height:100vh;padding:28px 20px;border-right:1px solid var(--line);
      background:rgba(255,253,248,.78);backdrop-filter:blur(14px);overflow:auto;
    }
    .portrait{
      border:1px solid var(--line);border-radius:28px;padding:18px;background:linear-gradient(180deg,#fff,#fff6ea);box-shadow:var(--shadow);text-align:center;
    }
    .seal{width:84px;height:84px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--rose-soft),var(--lavender));border:1px solid var(--line);font-size:38px;color:var(--rose)}
    h1{font-size:32px;line-height:1.05;margin:0}.subtitle{font-family:system-ui,sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:10px}
    .nav-title{font-family:system-ui,sans-serif;font-weight:800;font-size:13px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:26px 8px 10px}
    .tabs{display:flex;flex-direction:column;gap:8px}.tabs button{font-family:system-ui,sans-serif;text-align:left;border:1px solid transparent;background:transparent;color:var(--ink);padding:12px 14px;border-radius:16px;font-weight:750;cursor:pointer}.tabs button:hover{background:rgba(143,79,91,.09);border-color:var(--line)}.tabs button.active{background:linear-gradient(135deg,var(--rose),#b77582);color:#fff;border-color:transparent;box-shadow:0 12px 28px rgba(143,79,91,.18)}
    main{padding:42px clamp(18px,4vw,58px) 70px}.hero-card{max-width:1060px;margin:0 auto 28px;border:1px solid var(--line);border-radius:34px;background:rgba(255,253,248,.82);box-shadow:var(--shadow);padding:clamp(24px,4vw,48px);position:relative;overflow:hidden}.hero-card:after{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:rgba(185,139,56,.12)}
    .eyebrow{font-family:system-ui,sans-serif;color:var(--rose);font-weight:900;letter-spacing:.14em;text-transform:uppercase;font-size:12px}.hero-card h2{font-size:clamp(36px,6vw,78px);line-height:.95;margin:12px 0}.hero-card p{font-size:20px;line-height:1.7;color:var(--muted);max-width:790px}.section{display:none;max-width:1060px;margin:0 auto;animation:turn .32s ease}.section.active{display:block}@keyframes turn{from{opacity:.2;transform:translateX(12px)}to{opacity:1;transform:none}}
    .year-header{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:28px 0 16px;border-bottom:1px solid var(--line);padding-bottom:14px}.year-header h3{font-size:44px;margin:0}.year-header p{font-family:system-ui,sans-serif;color:var(--muted);margin:0;line-height:1.5}
    .memory-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.memory{grid-column:span 6;border:1px solid var(--line);border-radius:28px;background:rgba(255,253,248,.9);padding:14px;box-shadow:0 12px 30px rgba(82,55,42,.10);transform:rotate(-.35deg)}.memory:nth-child(even){transform:rotate(.35deg)}.memory.wide{grid-column:span 12}.caption{display:flex;justify-content:space-between;gap:12px;align-items:center;font-family:system-ui,sans-serif;margin:12px 4px 2px;color:var(--muted);font-size:14px}.tag{background:var(--sage);border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:#53634a;font-weight:800}.media{aspect-ratio:16/10;border-radius:20px;overflow:hidden;background:#f2e5dc;border:1px solid var(--line);display:grid;place-items:center;text-align:center;color:var(--muted);font-family:system-ui,sans-serif;line-height:1.45;padding:14px}.media iframe,.media img{width:100%;height:100%;border:0;object-fit:cover}.open{font-family:system-ui,sans-serif;color:var(--rose);font-weight:850;text-decoration:none}.open:hover{text-decoration:underline}.help-card{border:1px solid var(--line);border-radius:30px;background:linear-gradient(135deg,#fff,#fff4ed);padding:28px;box-shadow:var(--shadow)}.help-card a{display:inline-block;margin-top:12px;background:var(--rose);color:#fff;text-decoration:none;padding:13px 18px;border-radius:16px;font-family:system-ui,sans-serif;font-weight:850}
    footer{max-width:1060px;margin:38px auto 0;text-align:center;color:var(--muted);font-family:system-ui,sans-serif;font-size:13px}
    @media(max-width:820px){.layout{display:block}aside{position:relative;height:auto}.tabs{flex-direction:row;overflow:auto}.tabs button{white-space:nowrap}.memory,.memory.wide{grid-column:span 12}.year-header{display:block}.hero-card h2{font-size:42px}}