:root{color-scheme:dark}
*{box-sizing:border-box}
@keyframes banner-wave{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@keyframes gold-gleam{0%,100%{text-shadow:0 0 5px #ffd54f,0 0 10px #ffd54f}50%{text-shadow:0 0 15px #ffd54f,0 0 25px #ffd54f}}
@keyframes shield-shine{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
body{margin:0;font:16px/1.6 'MedievalSharp',cursive;background:#4e342e;color:#d7ccc8;background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffd54f' fill-opacity='0.05'%3E%3Cpath d='M0 0h10v10H0V0zm10 10h10v10H10V10z'/%3E%3C/g%3E%3C/svg%3E")}
.mf-wrap{max-width:1100px;margin:0 auto;padding:0 20px}
.mf-header{padding:40px 0;background:linear-gradient(135deg,#3e2723,#4e342e);border-bottom:3px solid #ffd54f;text-align:center;position:relative}
.mf-header::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffd54f' fill-opacity='0.1'%3E%3Cpath d='M25 0 L50 50 L25 100 L0 50 Z M75 0 L100 50 L75 100 L50 50 Z'/%3E%3C/g%3E%3C/svg%3E");background-size:100px 100px}
.mf-banner{font-size:32px;font-weight:900;color:#ffd54f;margin-bottom:20px;text-shadow:0 0 10px rgba(255,213,79,.5);animation:gold-gleam 3s infinite;position:relative;z-index:2}
.mf-main-title{margin:0 0 16px 0;font-size:36px;font-weight:700;color:#fff;text-shadow:0 0 10px rgba(255,213,79,.5);position:relative;z-index:2}
.mf-sub{margin:0 0 12px 0;color:#d7ccc8;font-weight:500;position:relative;z-index:2}
.mf-motto{color:#ffd54f;font-weight:700;font-size:18px;position:relative;z-index:2}
.mf-fairground{display:grid;gap:24px;padding:40px 0}
.mf-booth{display:grid;grid-template-columns:120px 1fr 100px;gap:24px;align-items:center;padding:28px;background:linear-gradient(135deg,#3e2723,#5d4037);border:2px solid #ffd54f;border-radius:15px;box-shadow:0 8px 16px rgba(0,0,0,.3);transition:all .3s ease;position:relative}
.mf-booth::before{content:'';position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,#ffd54f,#ffb300,#ffd54f);border-radius:15px;z-index:-1;opacity:0;transition:opacity .3s ease}
.mf-booth:hover::before{opacity:1}
.mf-booth:hover{transform:translateY(-5px);box-shadow:0 12px 24px rgba(255,213,79,.3)}
.mf-banner{text-align:center;animation:banner-wave 3s ease-in-out infinite}
.mf-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,#5d4037,#3e2723);border-radius:50%;border:3px solid #ffd54f;margin:0 auto 8px;box-shadow:0 0 15px rgba(255,213,79,.3)}
.mf-element{font-size:14px;color:#ffd54f;font-weight:700}
.mf-content{min-width:0}
.mf-title{margin:0 0 12px 0;font-size:22px;font-weight:700;color:#d7ccc8}
.mf-title a{color:inherit;text-decoration:none;text-shadow:0 0 5px rgba(255,213,79,.3)}
.mf-title a:hover{color:#fff;text-shadow:0 0 10px rgba(255,213,79,.5)}
.mf-desc{margin:0 0 16px 0;color:#bcaaa4;font-size:15px;line-height:1.6}
.mf-features{display:flex;gap:8px;flex-wrap:wrap}
.mf-feature{background:rgba(255,213,79,.1);color:#ffd54f;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:600;border:1px solid #ffd54f}
.mf-shield{text-align:center}
.mf-crest{width:60px;height:70px;background:linear-gradient(45deg,#ffd54f,#ffb300,#ffd54f);background-size:200% 200%;border-radius:50% 50% 0 0;margin:0 auto 8px;position:relative;animation:shield-shine 3s infinite;box-shadow:0 0 15px rgba(255,213,79,.3)}
.mf-crest::before{content:'';position:absolute;top:5px;left:5px;right:5px;bottom:5px;background:#3e2723;border-radius:50% 50% 0 0}
.mf-crest::after{content:'';position:absolute;top:50%;left:50%;width:20px;height:20px;background:#ffd54f;transform:translate(-50%,-50%);clip-path:polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%)}
.mf-motto{font-size:12px;color:#ffd54f;font-weight:700;text-transform:uppercase;letter-spacing:2px}
.mf-footer{padding:28px 0;border-top:3px solid #ffd54f;text-align:center;color:#ffd54f;font-weight:700;background:#3e2723}

  .addon { padding: 24px 0; border-top:1px solid #232323; }
  .addon-title { font-size: 20px; margin: 0 0 14px 0; position: relative; display:inline-block; }
  .addon-title:after { content:''; position:absolute; left:0; bottom:-6px; width: 42px; height: 3px; background: linear-gradient(90deg,#1a73e8,#00b4d8); border-radius: 3px; }

  /* Highlight card */
  .highlight { padding: 0; border: none; }
  .highlight-inner { display:flex; gap:14px; align-items:center; padding:16px; background: linear-gradient(135deg, rgba(26,115,232,0.08), rgba(0,180,216,0.08)); border:1px solid #2a2a2a; border-radius: 14px; }
  .highlight-icon { width:42px; height:42px; display:flex; align-items:center; justify-content:center; background:#1a1a1a; border:1px solid #2a2a2a; border-radius:10px; font-size:20px; }
  .highlight-content p { margin: 8px 0 0 0; color:#bdbdbd; }

  .table-wrap { overflow-x: auto; border:1px solid #2a2a2a; border-radius: 12px; background:#131313; }
  .table { width: 100%; border-collapse: collapse; }
  .table thead th { background:#191919; color:#ddd; font-weight:700; }
  .table th, .table td { border-bottom: 1px solid #242424; padding: 10px 12px; text-align: left; }
  .table tr:last-child td { border-bottom: none; }
  .table code { background:#1f1f1f; border:1px solid #2a2a2a; padding: 2px 6px; border-radius:6px; }

  .list { display: grid; gap: 8px; margin: 0; padding-left: 18px; }

  .grid { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
  .grid-card { display: grid; grid-template-columns: 40px 1fr; gap: 12px; padding: 12px; border: 1px solid #2a2a2a; border-radius: 12px; background: #141414; transition: transform .12s ease, border-color .12s ease; }
  .grid-card:hover { transform: translateY(-2px); border-color:#3a3a3a; }
  .grid-rank { width: 40px; height: 40px; background: #1a73e8; color: #fff; border-radius: 10px; display:flex; align-items:center; justify-content:center; font-weight: 800; box-shadow: 0 4px 12px rgba(26,115,232,.25); }
  .grid-title { font-weight: 700; }
  .grid-desc { color: #b0b0b0; }

  .chips { list-style:none; padding:0; margin:0; display:flex; flex-wrap: wrap; gap:10px; }
  .chips li { background:#171717; border:1px solid #2a2a2a; padding:8px 12px; border-radius:999px; color:#ddd; }

  .steps { margin:0; padding-left:18px; }
  .steps li { margin: 0 0 6px 0; }

  .faq details { border:1px solid #2a2a2a; border-radius:12px; padding:10px 14px; background:#151515; }
  .faq details+details { margin-top:10px; }
  .faq summary { cursor:pointer; color:#ddd; }
  
