:root {
  --duna-plum: #241027;
  --duna-plum-2: #35143a;
  --duna-cobalt: #345cff;
  --duna-magenta: #ff3dba;
  --duna-yellow: #f5ed30;
  --duna-silver: #d7d7e0;
  --duna-ink: #17121d;
  --duna-paper: #f7f6ff;
  --duna-panel: #302438;
  --duna-line: rgba(215, 215, 224, .22);
  --duna-radius: 20px;
  --duna-ease: cubic-bezier(.23,1,.32,1);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body { margin: 0; background: var(--duna-paper); color: var(--duna-ink); font-family: 'DM Sans', sans-serif; font-size: 16px; line-height: 1.55; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
a:hover { color: inherit; }
img { max-width: 100%; }
.dunareqoli-site { overflow: hidden; }
.dunareqoli-nav { background: rgba(36,16,39,.96); border-bottom: 1px solid rgba(255,255,255,.13); min-height: 76px; }
.dunareqoli-brand { display: inline-flex; gap: 10px; align-items: center; color: white; font-family: 'Space Grotesk',sans-serif; font-size: 1.05rem; font-weight: 700; letter-spacing: -.035em; }
.dunareqoli-brand:hover { color: white; }
.dunareqoli-brand img { width: 39px; height: 39px; }
.dunareqoli-brand small { display:block; color: var(--duna-yellow); font-family:'DM Sans',sans-serif; font-size:.62rem; letter-spacing:.12em; text-transform:uppercase; line-height: 1; margin-bottom: 3px; }
.dunareqoli-nav .nav-link { color: rgba(255,255,255,.84); font-size: .92rem; padding: 10px 12px; min-height: 44px; display:flex; align-items:center; }
.dunareqoli-nav .nav-link:hover,.dunareqoli-nav .nav-link:focus { color: var(--duna-yellow); }
.dunareqoli-toggler { min-width:44px; min-height:44px; border:1px solid rgba(255,255,255,.45); color:white; background:transparent; border-radius:8px; }
.dunareqoli-toggler:focus { outline:3px solid var(--duna-yellow); outline-offset:2px; }
.dunareqoli-eyebrow { display:inline-flex; align-items:center; gap:8px; color:var(--duna-magenta); text-transform:uppercase; font-size:.76rem; font-weight:700; letter-spacing:.12em; }
.dunareqoli-eyebrow::before { content:''; width:22px; height:2px; background:currentColor; }
.dunareqoli-title { font-family:'Space Grotesk',sans-serif; font-weight:700; letter-spacing:-.055em; line-height:.98; }
.dunareqoli-display { font-family:'Space Grotesk',sans-serif; font-size:clamp(2.7rem,6vw,5.45rem); line-height:.91; letter-spacing:-.07em; font-weight:700; }
.dunareqoli-btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:46px; border-radius:10px; padding:10px 17px; font-weight:700; font-size:.92rem; border:1px solid transparent; transition:transform .16s var(--duna-ease), background .16s var(--duna-ease), color .16s var(--duna-ease), border-color .16s var(--duna-ease); }
.dunareqoli-btn:active { transform:scale(.97); }
.dunareqoli-btn:focus-visible,.dunareqoli-card:focus-visible,.dunareqoli-faq-question:focus-visible { outline:3px solid var(--duna-yellow); outline-offset:3px; }
.dunareqoli-btn-primary { background:var(--duna-yellow); color:var(--duna-ink); }
.dunareqoli-btn-primary:hover { background:#fff969; color:var(--duna-ink); transform:translateY(-2px); }
.dunareqoli-btn-outline { border-color:rgba(255,255,255,.65); color:white; }
.dunareqoli-btn-outline:hover { background:white; color:var(--duna-plum); }
.dunareqoli-btn-dark { background:var(--duna-plum); color:white; }
.dunareqoli-btn-dark:hover { background:var(--duna-cobalt); color:white; }
.dunareqoli-section { padding:98px 0; }
.dunareqoli-section-tight { padding:68px 0; }
.dunareqoli-section-head { max-width:680px; margin-bottom:40px; }
.dunareqoli-section-head p { color:#655d70; font-size:1.05rem; max-width:600px; }
.dunareqoli-hero { position:relative; background:var(--duna-plum); color:white; padding:84px 0 64px; }
.dunareqoli-hero:before { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(52,92,255,.18),transparent 42%),linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size:auto,36px 36px,36px 36px; mask-image:linear-gradient(to bottom,#000,transparent 95%); }
.dunareqoli-hero-copy { position:relative; z-index:1; padding-top:18px; }
.dunareqoli-hero-copy .dunareqoli-eyebrow { color:var(--duna-yellow); }
.dunareqoli-hero-copy p { max-width:590px; color:#dad4df; font-size:1.1rem; }
.dunareqoli-hero-note { border-left:2px solid var(--duna-magenta); padding-left:13px; color:#c6bdca; font-size:.88rem; max-width:480px; }
.dunareqoli-gameboard { position:relative; min-height:470px; background:#0f101e; border:1px solid rgba(245,237,48,.65); border-radius:24px; overflow:hidden; box-shadow:13px 13px 0 var(--duna-magenta); }
.dunareqoli-gameboard img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.76; }
.dunareqoli-gameboard:after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(17,9,28,.1) 25%,rgba(17,9,28,.88) 100%); }
.dunareqoli-game-chip { position:absolute; z-index:2; background:rgba(36,16,39,.93); border:1px solid rgba(255,255,255,.25); padding:12px 15px; border-radius:10px; font-size:.82rem; }
.dunareqoli-game-chip strong { display:block; color:var(--duna-yellow); font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.dunareqoli-game-chip-top { top:18px; right:18px; }
.dunareqoli-game-chip-bottom { bottom:18px; left:18px; max-width:260px; }
.dunareqoli-levelstrip { background:var(--duna-cobalt); color:white; position:relative; overflow:hidden; }
.dunareqoli-levelstrip:before { content:'LEVEL // LEVEL // LEVEL // LEVEL'; position:absolute; right:0; top:-19px; width:100%; color:rgba(255,255,255,.09); font:700 5rem/1 'Space Grotesk',sans-serif; white-space:nowrap; overflow:hidden; }
.dunareqoli-level-pill { position:relative; border:1px solid rgba(255,255,255,.32); border-radius:12px; min-height:96px; padding:15px; }
.dunareqoli-level-pill b { display:block; color:var(--duna-yellow); font-family:'Space Grotesk',sans-serif; font-size:.86rem; letter-spacing:.06em; }
.dunareqoli-level-pill span { font-size:.9rem; }
.dunareqoli-selector-wrap { background:#f0eff7; }
.dunareqoli-card { text-align:left; width:100%; border:1px solid #cec9d7; background:white; border-radius:var(--duna-radius); padding:0; overflow:hidden; cursor:pointer; min-height:100%; transition:transform .2s var(--duna-ease), border-color .2s var(--duna-ease), box-shadow .2s var(--duna-ease); }
.dunareqoli-card:hover { transform:translateY(-4px); box-shadow:0 16px 26px rgba(36,16,39,.14); }
.dunareqoli-card.active { border-color:var(--duna-cobalt); box-shadow:0 0 0 3px rgba(52,92,255,.19), 0 16px 26px rgba(36,16,39,.12); }
.dunareqoli-card .card-img { height:178px; overflow:hidden; }
.dunareqoli-card .card-img img { width:100%; height:100%; object-fit:cover; transition:transform .4s var(--duna-ease); }
.dunareqoli-card:hover img { transform:scale(1.05); }
.dunareqoli-card .card-img-body { display:block; padding:20px; }
.dunareqoli-card-body { padding:20px; }
.dunareqoli-card .card-index { color:var(--duna-cobalt); font-family:'Space Grotesk',sans-serif; font-size:.78rem; font-weight:700; letter-spacing:.08em; }
.dunareqoli-card h3 { font-family:'Space Grotesk',sans-serif; font-size:1.45rem; font-weight:700; letter-spacing:-.04em; margin:5px 0 8px; }
.dunareqoli-card p { color:#60576a; margin:0; font-size:.92rem; }
.dunareqoli-mission-panel { border-radius:20px; background:var(--duna-plum); color:white; padding:30px; margin-top:30px; border:1px solid #53345a; }
.dunareqoli-mission-panel h3 { color:var(--duna-yellow); font-family:'Space Grotesk',sans-serif; letter-spacing:-.04em; }
.dunareqoli-mission-panel p { color:#ddd5e0; max-width:780px; margin-bottom:0; }
.dunareqoli-loadout { background:var(--duna-plum); color:white; }
.dunareqoli-loadout .dunareqoli-eyebrow { color:var(--duna-yellow); }
.dunareqoli-loadout .dunareqoli-section-head p { color:#d0c5d3; }
.dunareqoli-loadout-img { border-radius:18px; overflow:hidden; min-height:380px; border:1px solid rgba(255,255,255,.2); }
.dunareqoli-loadout-img img { width:100%; height:100%; object-fit:cover; }
.dunareqoli-loadout-item { display:flex; gap:15px; padding:17px 0; border-bottom:1px solid var(--duna-line); }
.dunareqoli-loadout-item i { flex:0 0 39px; width:39px; height:39px; display:grid; place-items:center; border-radius:9px; background:var(--duna-magenta); color:var(--duna-plum); font-size:1.05rem; }
.dunareqoli-loadout-item h3 { font:700 1.04rem 'Space Grotesk',sans-serif; margin:0 0 4px; }
.dunareqoli-loadout-item p { color:#cbc1cf; font-size:.9rem; margin:0; }
.dunareqoli-lab-img { height:100%; min-height:300px; border-radius:18px; object-fit:cover; width:100%; }
.dunareqoli-lab-stack { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:20px; }
.dunareqoli-lab-stack div { min-height:112px; border-radius:14px; padding:15px; background:#f0eff7; }
.dunareqoli-lab-stack b { display:block; color:var(--duna-cobalt); font:.75rem 'Space Grotesk',sans-serif; text-transform:uppercase; letter-spacing:.08em; }
.dunareqoli-lab-stack span { font-size:.9rem; font-weight:700; }
.dunareqoli-calibration { background:#eeeef6; }
.dunareqoli-console { background:var(--duna-plum); color:white; border-radius:22px; overflow:hidden; border:1px solid #5a3562; }
.dunareqoli-console-top { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:16px 20px; border-bottom:1px solid var(--duna-line); font:.78rem 'Space Grotesk',sans-serif; letter-spacing:.06em; }
.dunareqoli-console-light { display:inline-block; width:9px; height:9px; border-radius:50%; background:var(--duna-magenta); box-shadow:18px 0 0 var(--duna-yellow),36px 0 0 var(--duna-cobalt); margin-right:38px; }
.dunareqoli-console-body { padding:25px; }
.dunareqoli-knob { width:156px; height:156px; border-radius:50%; background:radial-gradient(circle at 42% 35%,#fff,#a5a3b2 32%,#37303d 34%,#16111c 59%,#694669 61%,#1d1724 63%); margin:20px auto 26px; position:relative; transition:transform .2s var(--duna-ease); }
.dunareqoli-knob:after { content:''; position:absolute; top:18px; left:74px; height:41px; width:7px; background:var(--duna-magenta); border-radius:8px; transform-origin:4px 60px; }
.dunareqoli-range { width:100%; accent-color:var(--duna-magenta); height:9px; cursor:pointer; }
.dunareqoli-console-output { border:1px solid #72577a; background:#19121e; padding:17px; border-radius:12px; font-family:'Space Grotesk',sans-serif; font-size:.9rem; }
.dunareqoli-console-output b { color:var(--duna-yellow); }
.dunareqoli-control-image { border-radius:22px; width:100%; height:100%; min-height:430px; object-fit:cover; }
.dunareqoli-scoreboard { background:var(--duna-cobalt); color:white; }
.dunareqoli-scoreboard .dunareqoli-eyebrow { color:var(--duna-yellow); }
.dunareqoli-scoreboard .dunareqoli-section-head p { color:#e2e6ff; }
.dunareqoli-debug-board { border:1px solid rgba(255,255,255,.4); border-radius:20px; overflow:hidden; background:#162b94; }
.dunareqoli-debug-row { display:grid; grid-template-columns:80px 1.2fr 1fr auto; align-items:center; gap:15px; border-bottom:1px solid rgba(255,255,255,.18); padding:17px 19px; }
.dunareqoli-debug-row:last-child { border-bottom:0; }
.dunareqoli-debug-row strong { font:.78rem 'Space Grotesk',sans-serif; letter-spacing:.08em; color:var(--duna-yellow); }
.dunareqoli-debug-row span { font-weight:700; }
.dunareqoli-debug-row small { color:#dfe4ff; font-size:.84rem; }
.dunareqoli-status { white-space:nowrap; border:1px solid rgba(255,255,255,.42); border-radius:99px; padding:5px 9px; font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.dunareqoli-status.good { color:var(--duna-yellow); }
.dunareqoli-portrait { height:390px; width:100%; border-radius:18px; object-fit:cover; }
.dunareqoli-clinic { background:#fff; }
.dunareqoli-clinic-card { background:#f0eff7; height:100%; border-radius:18px; padding:26px; border-left:5px solid var(--duna-magenta); }
.dunareqoli-clinic-card h3 { font:700 1.25rem 'Space Grotesk',sans-serif; letter-spacing:-.04em; }
.dunareqoli-clinic-card p { margin-bottom:0; color:#5b5265; }
.dunareqoli-queue { background:var(--duna-plum); color:white; }
.dunareqoli-queue .dunareqoli-eyebrow { color:var(--duna-yellow); }
.dunareqoli-queue .dunareqoli-section-head p { color:#d0c5d3; }
.dunareqoli-queue-img { height:100%; min-height:380px; width:100%; object-fit:cover; border-radius:18px; }
.dunareqoli-quest { position:relative; border-left:2px solid var(--duna-magenta); padding:0 0 25px 25px; }
.dunareqoli-quest:before { content:''; position:absolute; width:10px; height:10px; border-radius:50%; background:var(--duna-yellow); left:-6px; top:4px; }
.dunareqoli-quest:last-child { padding-bottom:0; }
.dunareqoli-quest span { display:block; color:var(--duna-yellow); font-size:.74rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.dunareqoli-quest h3 { font:700 1.15rem 'Space Grotesk',sans-serif; letter-spacing:-.03em; margin:4px 0; }
.dunareqoli-quest p { color:#d0c5d3; font-size:.9rem; margin:0; }
.dunareqoli-handoff { position:relative; overflow:hidden; color:white; background:var(--duna-ink); }
.dunareqoli-handoff img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.38; }
.dunareqoli-handoff:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--duna-ink) 17%,rgba(23,18,29,.7) 67%,rgba(23,18,29,.36)); }
.dunareqoli-handoff .container { position:relative; z-index:1; }
.dunareqoli-handoff h2 { max-width:620px; }
.dunareqoli-handoff p { max-width:610px; color:#e1dbe4; font-size:1.05rem; }
.dunareqoli-faq { background:#f0eff7; }
.dunareqoli-faq-list { border-top:1px solid #c9c4d0; }
.dunareqoli-faq-item { border-bottom:1px solid #c9c4d0; }
.dunareqoli-faq-question { display:flex; align-items:center; justify-content:space-between; gap:20px; width:100%; min-height:64px; padding:16px 0; border:0; background:transparent; color:var(--duna-ink); text-align:left; font:700 1.08rem 'Space Grotesk',sans-serif; letter-spacing:-.025em; }
.dunareqoli-faq-question i { flex:0 0 auto; transition:transform .2s var(--duna-ease); color:var(--duna-cobalt); font-size:1.2rem; }
.dunareqoli-faq-question[aria-expanded="true"] i { transform:rotate(45deg); }
.dunareqoli-faq-answer { display:none; padding:0 45px 20px 0; color:#5c5366; }
.dunareqoli-faq-answer p { margin:0; }
.dunareqoli-contact { background:var(--duna-yellow); }
.dunareqoli-contact-panel { background:var(--duna-plum); color:white; border-radius:20px; padding:30px; }
.dunareqoli-contact-panel p { color:#d7ccd9; }
.dunareqoli-form .form-control,.dunareqoli-form .form-select { min-height:48px; font-size:16px; color:var(--duna-ink); border:1px solid #cfcbd5; border-radius:8px; }
.dunareqoli-form textarea.form-control { min-height:118px; }
.dunareqoli-form .form-control:focus,.dunareqoli-form .form-select:focus { border-color:var(--duna-cobalt); box-shadow:0 0 0 .22rem rgba(52,92,255,.18); }
.dunareqoli-form label { color:var(--duna-plum); font-size:.88rem; font-weight:700; }
.dunareqoli-form .form-check-input { width:20px; height:20px; margin-top:.16em; }
.dunareqoli-form .form-check-label { padding-left:5px; font-weight:400; color:var(--duna-ink); font-size:.87rem; }
.dunareqoli-form .form-note { font-size:.84rem; color:#4e4654; }
.dunareqoli-form-success { display:none; color:var(--duna-plum); background:rgba(255,255,255,.55); border:1px solid var(--duna-plum); border-radius:8px; padding:13px; font-weight:700; }
.dunareqoli-footer { background:#160d19; color:#c9c0ce; padding:50px 0 22px; }
.dunareqoli-footer .dunareqoli-brand { margin-bottom:15px; }
.dunareqoli-footer p { max-width:440px; font-size:.9rem; }
.dunareqoli-footer h2 { color:var(--duna-yellow); font:.76rem 'Space Grotesk',sans-serif; text-transform:uppercase; letter-spacing:.1em; }
.dunareqoli-footer a { font-size:.9rem; display:inline-block; min-height:30px; color:#ded7e2; }
.dunareqoli-footer a:hover { color:var(--duna-yellow); }
.dunareqoli-footer-bottom { border-top:1px solid rgba(255,255,255,.15); margin-top:26px; padding-top:18px; font-size:.78rem; }
.dunareqoli-legal { background:#f0eff7; min-height:100vh; }
.dunareqoli-legal-hero { background:var(--duna-plum); color:white; padding:77px 0 55px; }
.dunareqoli-legal-hero .dunareqoli-eyebrow { color:var(--duna-yellow); }
.dunareqoli-legal-content { background:white; margin-top:-15px; border-radius:18px; padding:clamp(25px,5vw,65px); box-shadow:0 16px 40px rgba(36,16,39,.1); }
.dunareqoli-legal-content h2 { font:700 1.45rem 'Space Grotesk',sans-serif; letter-spacing:-.04em; margin:38px 0 10px; }
.dunareqoli-legal-content h2:first-child { margin-top:0; }
.dunareqoli-legal-content p,.dunareqoli-legal-content li { color:#564d60; }
.dunareqoli-legal-content a { color:var(--duna-cobalt); text-decoration:underline; }
.dunareqoli-error { min-height:calc(100vh - 76px); display:grid; place-items:center; background:var(--duna-plum); color:white; position:relative; }
.dunareqoli-error:before { content:'404'; position:absolute; font:700 min(43vw,25rem)/.7 'Space Grotesk',sans-serif; color:rgba(255,255,255,.035); }
.dunareqoli-error-inner { position:relative; text-align:center; max-width:680px; padding:64px 20px; }
.dunareqoli-error .dunareqoli-eyebrow { color:var(--duna-yellow); }
@media (max-width:991.98px) { .dunareqoli-nav .navbar-collapse { padding:11px 0 15px; } .dunareqoli-hero { padding-top:52px; } .dunareqoli-gameboard { min-height:380px; margin-top:18px; } .dunareqoli-section { padding:72px 0; } .dunareqoli-debug-row { grid-template-columns:66px 1.2fr auto; } .dunareqoli-debug-row small { grid-column:2/4; } }
@media (max-width:575.98px) { .dunareqoli-brand { font-size:.96rem; } .dunareqoli-brand img { width:35px; height:35px; } .dunareqoli-display { font-size:2.85rem; } .dunareqoli-section { padding:58px 0; } .dunareqoli-section-head { margin-bottom:28px; } .dunareqoli-hero > .container > .row,.dunareqoli-section > .container > .row { margin-left:0; margin-right:0; } .dunareqoli-gameboard { min-height:320px; box-shadow:7px 7px 0 var(--duna-magenta); } .dunareqoli-game-chip { padding:9px 10px; font-size:.73rem; } .dunareqoli-game-chip-top { top:12px; right:12px; } .dunareqoli-game-chip-bottom { bottom:12px; left:12px; max-width:220px; } .dunareqoli-lab-stack { grid-template-columns:1fr; } .dunareqoli-lab-stack div { min-height:0; } .dunareqoli-control-image { min-height:265px; } .dunareqoli-debug-row { grid-template-columns:58px 1fr; gap:8px; padding:15px; } .dunareqoli-debug-row .dunareqoli-status { grid-column:2; justify-self:start; } .dunareqoli-debug-row small { grid-column:2; } .dunareqoli-portrait { height:310px; } .dunareqoli-contact-panel { padding:22px; } .dunareqoli-legal-hero { padding:54px 0 45px; } }
@media (prefers-reduced-motion:no-preference) { .dunareqoli-card,.dunareqoli-btn { transition-timing-function:var(--duna-ease); } }
