
:root{
  --bg-primary:#080c18;--bg-secondary:#0d1426;--bg-tertiary:#131e3a;
  --text-primary:#e8eef5;--text-secondary:#8b9bb4;
  --accent-1:#00bceb;--accent-2:#ff6b35;--accent-3:#fbbf24;
  --border:rgba(0,188,235,.2);--card-bg:rgba(13,20,38,.85);
  --glow:rgba(0,188,235,.4);--anim-speed:1;--font-scale:1.18;
  --font-family:'Times New Roman',Times,serif;--radius:14px;
}
[data-theme="ocean"]{--accent-1:#06b6d4;--accent-2:#0ea5e9;--accent-3:#22d3ee;--glow:rgba(6,182,212,.4)}
[data-theme="forest"]{--accent-1:#10b981;--accent-2:#84cc16;--accent-3:#fbbf24;--glow:rgba(16,185,129,.4)}
[data-theme="sunset"]{--accent-1:#f97316;--accent-2:#ef4444;--accent-3:#fbbf24;--glow:rgba(249,115,22,.4)}
[data-theme="purple"]{--accent-1:#a855f7;--accent-2:#ec4899;--accent-3:#fbbf24;--glow:rgba(168,85,247,.4)}
[data-theme="cyber"]{--accent-1:#ec4899;--accent-2:#06b6d4;--accent-3:#a3e635;--glow:rgba(236,72,153,.4)}
[data-theme="gold"]{--accent-1:#d4af37;--accent-2:#ff8c00;--accent-3:#ffd700;--glow:rgba(212,175,55,.4)}
[data-theme="crimson"]{--accent-1:#dc2626;--accent-2:#f59e0b;--accent-3:#fbbf24;--glow:rgba(220,38,38,.4)}
[data-theme="teal"]{--accent-1:#14b8a6;--accent-2:#6366f1;--accent-3:#fbbf24;--glow:rgba(20,184,166,.4)}
.light-mode{--bg-primary:#eef2f7;--bg-secondary:#ffffff;--bg-tertiary:#e2e8f0;--text-primary:#1a2b42;--text-secondary:#475569;--border:rgba(4,150,199,.25);--card-bg:rgba(255,255,255,.92);--glow:rgba(4,150,199,.2)}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:var(--font-family);font-size:calc(1.05rem * var(--font-scale));background:var(--bg-primary);color:var(--text-primary);transition:all .4s ease;line-height:1.8;overflow-x:hidden}
.bg-fixed{position:fixed;inset:0;z-index:-1;pointer-events:none}
.bg-glow{background:radial-gradient(circle at 15% 50%,var(--glow) 0%,transparent 45%),radial-gradient(circle at 85% 80%,rgba(255,107,53,.08) 0%,transparent 45%),radial-gradient(circle at 50% 20%,rgba(251,191,36,.06) 0%,transparent 45%);opacity:.6}
.bg-grid{background-image:linear-gradient(var(--accent-1) 1px,transparent 1px),linear-gradient(90deg,var(--accent-1) 1px,transparent 1px);background-size:60px 60px;opacity:.03}
.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(8,12,24,.85);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);transition:all .3s ease}
.light-mode .navbar{background:rgba(255,255,255,.88)}
.nav-link{position:relative;padding:.5rem 1.2rem;color:var(--text-secondary);text-decoration:none;font-size:calc(1.15rem * var(--font-scale));transition:color .3s;cursor:pointer;font-weight:600}
.nav-link:hover,.nav-link.active{color:var(--accent-1)}
.nav-link::after{content:'';position:absolute;bottom:-4px;left:50%;width:0;height:3px;background:linear-gradient(90deg,var(--accent-1),var(--accent-2));transition:all .3s;transform:translateX(-50%);border-radius:2px}
.nav-link:hover::after,.nav-link.active::after{width:80%}
.logo{font-size:calc(1.6rem * var(--font-scale));font-weight:bold;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:1px}
.page{display:none;min-height:100vh;padding-top:90px;padding-bottom:60px}
.page.active{display:block;animation:fadeUp .6s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.hero{display:flex;align-items:center;gap:3rem;padding:2rem 5%;min-height:calc(100vh - 90px);flex-wrap:wrap}
.hero-content{flex:1;min-width:350px}
.hero-title{font-size:calc(3.2rem * var(--font-scale));font-weight:bold;line-height:1.1;margin-bottom:1.5rem}
.hero-title span{background:linear-gradient(135deg,var(--accent-1),var(--accent-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-subtitle{font-size:calc(1.25rem * var(--font-scale));color:var(--text-secondary);margin-bottom:2rem}
.ccnp-badge{display:inline-block;background:#fff;border-radius:50%;padding:6px;border:3px solid var(--accent-1);box-shadow:0 0 30px var(--glow);object-fit:contain}
.ccnp-link{display:inline-block;line-height:0;text-decoration:none;transition:transform .25s}
.ccnp-link:hover{transform:scale(1.06)}
.ccnp-link:hover .ccnp-badge{box-shadow:0 0 45px var(--glow);border-color:var(--accent-2)}
.ccnp-verify{display:inline-flex;align-items:center;gap:.35rem;font-size:calc(.85rem * var(--font-scale));color:var(--accent-1);text-decoration:none;border:1px solid var(--border);border-radius:50px;padding:.25rem .8rem;margin-top:.4rem}
.ccnp-verify:hover{background:var(--card-bg);border-color:var(--accent-1)}
.hero-cert{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.hero-cert img{width:110px;height:110px}
.hero-cert-text{font-size:calc(.95rem * var(--font-scale));color:var(--text-secondary);line-height:1.4}
.hero-cert-text b{display:block;color:var(--text-primary);font-size:calc(1.05rem * var(--font-scale))}
.author-badges{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}
.author-badges .author-avatar{margin:0}
.author-badges .ccnp-badge{width:150px;height:150px}
.cert-badge .ccnp-badge{width:72px;height:72px;padding:4px;margin-bottom:.5rem;border-width:2px;box-shadow:none}
@media(max-width:768px){.hero-cert{justify-content:center;text-align:left}.hero-cert img{width:90px;height:90px}}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.2rem;background:var(--card-bg);border:1px solid var(--border);border-radius:50px;font-size:calc(.95rem * var(--font-scale));color:var(--accent-1);margin-bottom:1.5rem}
.btn-primary{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 2rem;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));color:#fff;text-decoration:none;border-radius:50px;font-size:calc(1.1rem * var(--font-scale));font-weight:bold;transition:all .3s;border:none;cursor:pointer;box-shadow:0 4px 20px var(--glow)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 30px var(--glow)}
.btn-secondary{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 2rem;background:var(--card-bg);color:var(--text-primary);text-decoration:none;border-radius:50px;font-size:calc(1.1rem * var(--font-scale));font-weight:bold;transition:all .3s;border:1px solid var(--border);cursor:pointer}
.btn-secondary:hover{border-color:var(--accent-1);color:var(--accent-1)}
.hero-visual{flex:1.3;min-width:400px;position:relative}
.enterprise-svg{width:100%;height:auto;filter:drop-shadow(0 0 30px var(--glow))}
@keyframes pulse-glow{0%,100%{filter:drop-shadow(0 0 5px var(--accent-1))}50%{filter:drop-shadow(0 0 20px var(--accent-1))}}
.device-node{animation:pulse-glow calc(3s / var(--anim-speed)) ease-in-out infinite}
@keyframes dash{to{stroke-dashoffset:-20}}
.topo-link{stroke-dasharray:6,4;animation:dash calc(1.5s / var(--anim-speed)) linear infinite}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;padding:3rem 5%}
.stat-card{text-align:center;padding:2rem 1rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);transition:all .3s}
.stat-card:hover{transform:translateY(-5px);border-color:var(--accent-1)}
.stat-number{font-size:calc(2.8rem * var(--font-scale));font-weight:bold;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.stat-label{color:var(--text-secondary);font-size:calc(1rem * var(--font-scale));margin-top:.5rem}
.section-title{font-size:calc(2.5rem * var(--font-scale));font-weight:bold;text-align:center;margin-bottom:1rem}
.section-title span{background:linear-gradient(135deg,var(--accent-1),var(--accent-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.section-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:3rem;font-size:calc(1.15rem * var(--font-scale))}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;padding:0 5%}
.feature-card{padding:2rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);transition:all .3s;position:relative;overflow:hidden}
.feature-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent-1),var(--accent-2))}
.feature-card:hover{transform:translateY(-5px);border-color:var(--accent-1);box-shadow:0 10px 30px var(--glow)}
.feature-icon{font-size:2.5rem;color:var(--accent-1);margin-bottom:1rem}
.feature-title{font-size:calc(1.35rem * var(--font-scale));font-weight:bold;margin-bottom:.8rem}
.feature-desc{color:var(--text-secondary);font-size:calc(1.05rem * var(--font-scale))}
.lab-filters{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap;padding:0 5%}
.filter-btn{padding:.7rem 1.8rem;background:var(--card-bg);border:1px solid var(--border);border-radius:50px;color:var(--text-secondary);font-size:calc(1.05rem * var(--font-scale));cursor:pointer;transition:all .3s;font-family:var(--font-family);font-weight:600}
.filter-btn:hover,.filter-btn.active{background:linear-gradient(135deg,var(--accent-1),var(--accent-2));color:#fff;border-color:transparent}
.search-box{width:100%;max-width:500px;margin:0 auto 2rem;display:block;padding:.8rem 1.5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:50px;color:var(--text-primary);font-size:calc(1.05rem * var(--font-scale));font-family:var(--font-family)}
.search-box:focus{outline:none;border-color:var(--accent-1)}
.labs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;padding:0 5%}
.lab-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:all .3s;cursor:pointer;position:relative}
.lab-card:hover{transform:translateY(-5px);border-color:var(--accent-1);box-shadow:0 10px 30px var(--glow)}
.lab-card-header{padding:1.2rem 1.5rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}
.lab-diff{padding:.3rem .8rem;border-radius:20px;font-size:calc(.85rem * var(--font-scale));font-weight:bold}
.diff-beginner{background:rgba(16,185,129,.2);color:#10b981;border:1px solid rgba(16,185,129,.3)}
.diff-intermediate{background:rgba(251,191,36,.2);color:#fbbf24;border:1px solid rgba(251,191,36,.3)}
.diff-advanced{background:rgba(239,68,68,.2);color:#ef4444;border:1px solid rgba(239,68,68,.3)}
.lab-card-body{padding:1.5rem}
.lab-card-title{font-size:calc(1.2rem * var(--font-scale));font-weight:bold;margin-bottom:.5rem}
.lab-card-desc{color:var(--text-secondary);font-size:calc(.95rem * var(--font-scale));line-height:1.6}
.lab-card-footer{padding:.8rem 1.5rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-size:calc(.9rem * var(--font-scale))}
.lab-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.8rem}
.lab-tag{padding:.2rem .6rem;background:rgba(0,188,235,.1);border:1px solid var(--border);border-radius:4px;font-size:calc(.8rem * var(--font-scale));color:var(--accent-1)}
.like-btn{display:flex;align-items:center;gap:.4rem;cursor:pointer;color:var(--text-secondary);transition:color .3s;background:none;border:none;font-family:var(--font-family);font-size:calc(.95rem * var(--font-scale))}
.like-btn:hover,.like-btn.liked{color:var(--accent-2)}
.like-btn.liked .fa-heart{animation:heart-pop .4s ease}
@keyframes heart-pop{0%{transform:scale(1)}50%{transform:scale(1.4)}100%{transform:scale(1)}}
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);backdrop-filter:blur(5px);z-index:2000;display:none;align-items:flex-start;justify-content:center;padding:2rem;overflow-y:auto}
.modal-overlay.active{display:flex}
.modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);max-width:1100px;width:100%;margin:auto;position:relative;animation:modalSlide .4s ease}
@keyframes modalSlide{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
.modal-header{padding:1.5rem 2rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:var(--bg-secondary);border-radius:var(--radius) var(--radius) 0 0;z-index:10}
.modal-close{background:none;border:none;font-size:1.8rem;color:var(--text-secondary);cursor:pointer;transition:color .3s}
.modal-close:hover{color:var(--accent-2)}
.modal-body{padding:2rem}
.modal-section{margin-bottom:2rem}
.modal-section-title{font-size:calc(1.4rem * var(--font-scale));font-weight:bold;margin-bottom:1rem;color:var(--accent-1);display:flex;align-items:center;gap:.6rem}
.objectives-list{list-style:none;padding-left:0}
.objectives-list li{padding:.4rem 0;padding-left:1.8rem;position:relative}
.objectives-list li::before{content:'\f00c';font-family:'Font Awesome 6 Free';font-weight:900;color:var(--accent-1);position:absolute;left:0}
.cli-block{background:#0a0e1a;border:1px solid var(--border);border-radius:8px;padding:1.2rem;font-family:'Courier New',monospace;font-size:calc(.95rem * var(--font-scale));color:#e8eef5;overflow-x:auto;position:relative;line-height:1.6;white-space:pre-wrap}
.light-mode .cli-block{background:#1a1a2e}
.cli-prompt{color:var(--accent-1)}
.cli-comment{color:var(--text-secondary);font-style:italic}
.cli-output{color:#10b981}
.topology-container{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;padding:1.5rem;overflow-x:auto}
.topology-svg{width:100%;max-width:700px;height:auto;margin:0 auto;display:block}
.comments-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}
.comment-input{width:100%;padding:.8rem;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:calc(1rem * var(--font-scale));font-family:var(--font-family);margin-bottom:1rem}
.comment-input:focus{outline:none;border-color:var(--accent-1)}
.comment-list{max-height:300px;overflow-y:auto}
.comment-item{padding:.8rem;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:.5rem}
.comment-author{font-weight:bold;color:var(--accent-1);font-size:calc(.95rem * var(--font-scale))}
.comment-text{color:var(--text-secondary);margin-top:.3rem;font-size:calc(.95rem * var(--font-scale))}
.roadmap-container{padding:0 5%;max-width:1200px;margin:0 auto}
.roadmap-track{position:relative;padding:2rem 0}
.roadmap-track::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:4px;background:linear-gradient(to bottom,var(--accent-1),var(--accent-2));transform:translateX(-50%);border-radius:2px}
.roadmap-item{position:relative;width:50%;padding:1rem 3rem;margin-bottom:2rem}
.roadmap-item:nth-child(odd){left:0}
.roadmap-item:nth-child(even){left:50%}
.roadmap-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:all .3s;position:relative}
.roadmap-card:hover{transform:scale(1.03);border-color:var(--accent-1);box-shadow:0 10px 30px var(--glow)}
.roadmap-item:nth-child(odd) .roadmap-card::after{content:'';position:absolute;right:-30px;top:50%;width:30px;height:3px;background:var(--accent-1);transform:translateY(-50%)}
.roadmap-item:nth-child(even) .roadmap-card::after{content:'';position:absolute;left:-30px;top:50%;width:30px;height:3px;background:var(--accent-1);transform:translateY(-50%)}
.roadmap-dot{position:absolute;top:50%;width:20px;height:20px;background:var(--accent-1);border:4px solid var(--bg-primary);border-radius:50%;transform:translateY(-50%);z-index:1;box-shadow:0 0 15px var(--glow)}
.roadmap-item:nth-child(odd) .roadmap-dot{right:-10px}
.roadmap-item:nth-child(even) .roadmap-dot{left:-10px}
.roadmap-level{display:inline-block;padding:.3rem .8rem;border-radius:20px;font-size:calc(.85rem * var(--font-scale));font-weight:bold;margin-bottom:.5rem}
.level-1{background:rgba(16,185,129,.2);color:#10b981}
.level-2{background:rgba(251,191,36,.2);color:#fbbf24}
.level-3{background:rgba(239,68,68,.2);color:#ef4444}
.level-4{background:rgba(168,85,247,.2);color:#a855f7}
.about-container{padding:0 5%;max-width:1000px;margin:0 auto}
.about-hero{text-align:center;margin-bottom:3rem}
.author-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:2.5rem;text-align:center;position:relative;overflow:hidden}
.author-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,var(--accent-1),var(--accent-2),var(--accent-3))}
.author-avatar{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--accent-1),var(--accent-2));display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff;margin:0 auto 1.5rem;font-weight:bold;border:4px solid var(--border);box-shadow:0 0 30px var(--glow)}
.author-name{font-size:calc(1.8rem * var(--font-scale));font-weight:bold;margin-bottom:.5rem}
.author-title{color:var(--accent-1);font-size:calc(1.1rem * var(--font-scale));margin-bottom:1rem}
.author-cred{display:inline-block;padding:.5rem 1.5rem;background:linear-gradient(135deg,rgba(0,188,235,.15),rgba(255,107,53,.15));border:1px solid var(--border);border-radius:50px;font-size:calc(1rem * var(--font-scale));color:var(--accent-1);font-weight:600}
.cert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem}
.cert-badge{padding:1.5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);text-align:center;transition:all .3s}
.cert-badge:hover{transform:translateY(-5px);border-color:var(--accent-1)}
.cert-icon{font-size:2.5rem;color:var(--accent-1);margin-bottom:.5rem}
.social-links{display:flex;justify-content:center;gap:1.5rem;margin-top:2rem}
.social-link{width:55px;height:55px;border-radius:50%;background:var(--card-bg);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--text-secondary);transition:all .3s;text-decoration:none}
.social-link:hover{transform:translateY(-5px) scale(1.1);color:#fff}
.social-link.linkedin:hover{background:#0077b5;border-color:#0077b5}
.social-link.github:hover{background:#333;border-color:#333}
.social-link.twitter:hover{background:#000;border-color:#000}
.settings-panel{position:fixed;top:0;right:-400px;width:380px;height:100vh;background:var(--bg-secondary);border-left:1px solid var(--border);z-index:3000;transition:right .4s ease;overflow-y:auto;padding:2rem}
.settings-panel.active{right:0}
.settings-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:2500;display:none}
.settings-overlay.active{display:block}
.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.settings-title{font-size:calc(1.5rem * var(--font-scale));font-weight:bold;color:var(--accent-1)}
.settings-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer}
.setting-group{margin-bottom:2rem}
.setting-label{font-size:calc(1.1rem * var(--font-scale));font-weight:bold;margin-bottom:1rem;display:block}
.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}
.theme-option{padding:1rem;border:2px solid var(--border);border-radius:10px;cursor:pointer;transition:all .3s;text-align:center}
.theme-option:hover{border-color:var(--accent-1)}
.theme-option.active{border-color:var(--accent-1);background:var(--card-bg)}
.theme-preview{width:100%;height:40px;border-radius:6px;margin-bottom:.5rem}
.theme-name{font-size:calc(.9rem * var(--font-scale));font-weight:600}
.font-grid{display:grid;grid-template-columns:1fr;gap:.5rem}
.font-option{padding:.8rem 1rem;border:2px solid var(--border);border-radius:8px;cursor:pointer;transition:all .3s}
.font-option:hover,.font-option.active{border-color:var(--accent-1);background:var(--card-bg)}
.font-option-name{font-weight:bold}
.range-slider{width:100%;height:8px;border-radius:4px;background:var(--bg-tertiary);outline:none;-webkit-appearance:none;appearance:none}
.range-slider::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--accent-1);cursor:pointer;border:3px solid var(--bg-secondary);box-shadow:0 0 10px var(--glow)}
.range-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--accent-1);cursor:pointer;border:3px solid var(--bg-secondary)}
.range-value{text-align:center;margin-top:.5rem;font-weight:bold;color:var(--accent-1);font-size:calc(1.1rem * var(--font-scale))}
.mode-toggle{width:100%;padding:1rem;border:2px solid var(--border);border-radius:10px;background:var(--card-bg);color:var(--text-primary);cursor:pointer;font-size:calc(1.05rem * var(--font-scale));font-family:var(--font-family);font-weight:600;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:.6rem}
.mode-toggle:hover{border-color:var(--accent-1)}
.footer{background:var(--bg-secondary);border-top:1px solid var(--border);padding:3rem 5% 2rem;margin-top:4rem}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;max-width:1400px;margin:0 auto}
.footer-col h4{font-size:calc(1.2rem * var(--font-scale));font-weight:bold;margin-bottom:1rem;color:var(--accent-1)}
.footer-col p,.footer-col a{color:var(--text-secondary);text-decoration:none;font-size:calc(1rem * var(--font-scale));display:block;margin-bottom:.5rem;transition:color .3s}
.footer-col a:hover{color:var(--accent-1)}
.footer-bottom{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border);color:var(--text-secondary)}
.scroll-top{position:fixed;bottom:30px;left:30px;width:50px;height:50px;border-radius:50%;background:var(--card-bg);border:1px solid var(--border);color:var(--accent-1);font-size:1.3rem;cursor:pointer;z-index:900;display:none;align-items:center;justify-content:center;transition:all .3s}
.scroll-top.visible{display:flex}
.scroll-top:hover{border-color:var(--accent-1);transform:translateY(-3px)}
@media(max-width:768px){
  .hero{flex-direction:column;text-align:center}
  .hero-title{font-size:calc(2.2rem * var(--font-scale))}
  .roadmap-track::before{left:20px}
  .roadmap-item{width:100%;padding-left:50px;padding-right:1rem;left:0!important}
  .roadmap-item .roadmap-dot{left:10px!important;right:auto!important}
  .roadmap-item .roadmap-card::after{display:none}
  .nav-link{padding:.5rem .6rem;font-size:calc(1rem * var(--font-scale))}
  .modal-body{padding:1rem}
  .settings-panel{width:100%;right:-100%}
}
.tab-bar{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}
.tab-btn{padding:.6rem 1.2rem;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:calc(1rem * var(--font-scale));font-family:var(--font-family);font-weight:600;transition:all .3s}
.tab-btn.active{background:var(--accent-1);color:#fff;border-color:var(--accent-1)}
.tab-content{display:none}
.tab-content.active{display:block;animation:fadeUp .4s ease}
.featured-labs{padding:3rem 5%}
.featured-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;max-width:1400px;margin:0 auto}
.featured-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:all .3s;cursor:pointer;position:relative;overflow:hidden}
.featured-card:hover{transform:translateY(-5px);border-color:var(--accent-1)}
.featured-card .lab-number{position:absolute;top:-10px;right:-10px;font-size:5rem;font-weight:bold;color:var(--border);opacity:.3}



@media(max-width:768px){
  .navbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    overflow-x: auto;
  }

  .nav-link {
    flex: 1 1 auto;
    text-align: center;
    padding: .5rem .8rem;
    font-size: calc(1rem * var(--font-scale));
  }

  .nav-link::after {
    bottom: -2px; /* prevents overflow */
  }
}
