@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{color-scheme:dark;--bg:#0b1220;--bg-alt:#0f192b;--panel:#111e31;--panel-hover:#16263d;--text:#edf3fc;--muted:#a0aec2;--subtle:#6e8099;--line:rgba(163,184,211,.14);--accent:#60a5fa;--accent-2:#67e8f9;--green:#6ee7b7;--shadow:0 20px 60px rgba(0,0,0,.2);--radius:20px;--container:1120px}
:root[data-theme="light"]{color-scheme:light;--bg:#f6f8fc;--bg-alt:#edf2f9;--panel:#fff;--panel-hover:#f2f7ff;--text:#152238;--muted:#53647b;--subtle:#708198;--line:rgba(35,55,80,.15);--accent:#2563eb;--accent-2:#0891b2;--green:#047857;--shadow:0 20px 60px rgba(30,50,80,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font-family:'Manrope',Arial,sans-serif;line-height:1.7;transition:background .25s,color .25s}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--accent-2);outline-offset:4px}.container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}.section{padding:108px 0}.section-alt{background:var(--bg-alt)}.accent{color:var(--accent-2)}.gradient-text{background:linear-gradient(100deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.skip-link{position:absolute;left:16px;top:-60px;z-index:1000;background:var(--accent);color:#07101e;padding:10px 14px;border-radius:8px}.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;font-size:1.15rem;font-weight:800;letter-spacing:-.04em}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#07101e;font-weight:800}.nav-links{display:flex;align-items:center;gap:28px}.nav-links>a{color:var(--muted);font-size:.86rem;font-weight:700;transition:color .2s}.nav-links>a:hover{color:var(--text)}.theme-toggle{border:1px solid var(--line);background:var(--panel);color:var(--text);width:38px;height:38px;border-radius:12px;cursor:pointer;font-size:1.25rem}.menu-toggle{display:none;background:transparent;border:0;padding:8px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:var(--text);margin:5px}
.hero{padding-top:94px;padding-bottom:30px;min-height:640px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 82% 40%,rgba(37,99,235,.11),transparent 36%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;min-height:470px}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:var(--accent-2);font-family:'DM Mono',monospace;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px color-mix(in srgb,var(--green) 15%,transparent)}h1,h2,h3,p{margin-top:0}h1{max-width:720px;margin-bottom:24px;font-size:clamp(2.8rem,5.7vw,5rem);line-height:1.08;letter-spacing:-.065em;font-weight:800}h2{font-size:clamp(2.15rem,4vw,3.3rem);line-height:1.15;letter-spacing:-.055em;margin-bottom:0}h3{letter-spacing:-.025em}.hero-intro{max-width:610px;color:var(--muted);font-size:1.08rem;line-height:1.9}.hero-intro strong{color:var(--text)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 26px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 19px;border:1px solid transparent;border-radius:12px;font-size:.9rem;font-weight:800;transition:transform .2s,background .2s,border-color .2s}.button:hover{transform:translateY(-3px)}.button-primary{background:linear-gradient(100deg,var(--accent),var(--accent-2));color:#07101e;box-shadow:0 8px 28px rgba(37,99,235,.18)}.button-secondary{border-color:var(--line);background:var(--panel);color:var(--text)}.button-secondary:hover{border-color:var(--accent)}.hero-socials{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:.86rem}.hero-socials a:hover,.text-link:hover{color:var(--accent-2)}.social-separator{color:var(--subtle)}
.hero-visual{position:relative;min-height:390px;display:grid;place-items:center}.orbit{position:absolute;border:1px solid var(--line);border-radius:50%;transform:rotate(-20deg)}.orbit-one{width:390px;height:300px}.orbit-two{width:300px;height:390px}.code-window{position:relative;z-index:2;width:min(100%,390px);padding:0 0 20px;border:1px solid rgba(130,170,220,.25);border-radius:18px;background:color-mix(in srgb,var(--panel) 93%,transparent);box-shadow:var(--shadow);transform:rotate(2deg)}.window-top{height:46px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:7px;padding:0 17px}.window-top>span{width:8px;height:8px;border-radius:50%;background:#fb7185}.window-top>span:nth-child(2){background:#fbbf24}.window-top>span:nth-child(3){background:#34d399}.window-top small{margin-left:auto;color:var(--subtle);font-family:'DM Mono',monospace;font-size:.7rem}.code-lines{padding:20px 18px 0;font-family:'DM Mono',monospace;font-size:clamp(.64rem,1.1vw,.79rem);line-height:2.1;white-space:nowrap}.code-lines p{margin:0}.code-muted{display:inline-block;width:24px;color:var(--subtle)}.code-purple{color:#c4b5fd}.code-green{color:#86efac}.code-comment{color:var(--subtle);margin-top:8px!important}.floating-badge{position:absolute;z-index:3;padding:11px 14px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;font-size:.76rem;font-weight:700}.badge-top{top:38px;right:0}.badge-top span{color:var(--accent-2);margin-right:5px}.badge-bottom{bottom:35px;left:0;display:flex;align-items:center;gap:10px}.hero-bottom{display:flex;align-items:center;gap:15px;color:var(--subtle);font: .65rem 'DM Mono',monospace;letter-spacing:.12em;margin-top:30px}.scroll-line{width:48px;height:1px;background:var(--line)}.hero-bottom span:last-child{margin-left:auto}
.section-heading{margin-bottom:48px}.section-heading h2{max-width:750px}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:36px}.section-note{max-width:350px;margin:0;color:var(--muted);font-size:.9rem}.section-note code{font-family:'DM Mono',monospace;color:var(--accent-2)}.wide-note{max-width:650px;margin-top:20px}
.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:32px 72px;align-items:start}.about-lead p{color:var(--muted)}.about-lead .large-copy{font-size:1.35rem;line-height:1.7;color:var(--text);font-weight:600}.about-detail{display:flex;gap:17px;padding:20px 0;border-bottom:1px solid var(--line)}.detail-icon{flex:0 0 42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--panel);border:1px solid var(--line);color:var(--accent-2);font-size:1.2rem}.about-detail h3{margin:0 0 6px;font-size:1rem}.about-detail p{margin:0;color:var(--muted);font-size:.88rem}
.skills-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.skill-card{padding:22px 20px;background:var(--panel);border:1px solid var(--line);border-radius:16px;transition:transform .2s,border-color .2s,background .2s}.skill-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:var(--panel-hover)}.skill-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--bg-alt);font-weight:800;font-size:1.1rem;margin-bottom:18px}.orange{color:#fb923c}.blue{color:#60a5fa}.yellow{color:#facc15}.cyan{color:#22d3ee}.teal{color:#2dd4bf}.purple{color:#c4b5fd}.green{color:#6ee7b7}.pink{color:#f9a8d4}.skill-card h3{margin:0 0 7px;font-size:1rem}.skill-card p{min-height:48px;margin:0 0 16px;color:var(--muted);font-size:.78rem}.skill-status{display:inline-block;padding:5px 8px;border-radius:7px;background:var(--bg-alt);color:var(--subtle);font-size:.67rem;font-weight:700}
.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--panel);transition:transform .2s,border-color .2s}.project-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 50%,var(--line))}.project-art{height:230px;position:relative;display:grid;place-items:center;overflow:hidden}.portfolio-art{background:radial-gradient(circle at 25% 20%,rgba(96,165,250,.28),transparent 42%),linear-gradient(135deg,#101c32,#152b46)}.mini-browser{width:68%;height:145px;background:#0b1220;border:1px solid rgba(160,190,230,.35);border-radius:9px;overflow:hidden;transform:rotate(-3deg);box-shadow:0 15px 45px #050a1480}.mini-browser-bar{height:18px;border-bottom:1px solid #25354c;display:flex;align-items:center;gap:4px;padding-left:8px}.mini-browser-bar i{width:5px;height:5px;border-radius:50%;background:#fb7185}.mini-browser-bar i:nth-child(2){background:#fbbf24}.mini-browser-bar i:nth-child(3){background:#34d399}.mini-layout{display:flex;align-items:center;justify-content:space-around;height:120px;padding:15px}.mini-copy{width:45%}.mini-copy b,.mini-copy span{display:block;height:6px;background:#60a5fa;border-radius:5px;margin:7px 0}.mini-copy b:nth-child(2){width:70%;background:#dbeafe}.mini-copy b:nth-child(3){width:90%;background:#344b6a}.mini-copy span{width:45%;height:12px;background:#67e8f9}.mini-circle{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#60a5fa,#67e8f9);box-shadow:0 0 35px #60a5fa55}.quran-art{background:radial-gradient(circle,rgba(45,212,191,.17),transparent 48%),linear-gradient(135deg,#0d292d,#14283a)}.quran-symbol{font-size:5rem;color:#8de7d7;text-shadow:0 0 40px #2dd4bf55}.audio-bars{position:absolute;bottom:36px;display:flex;gap:5px;align-items:center;height:24px}.audio-bars i{display:block;width:4px;border-radius:4px;background:#67e8f9;height:35%}.audio-bars i:nth-child(3n){height:95%}.audio-bars i:nth-child(2n){height:65%}.audio-bars i:nth-child(4n){height:45%}.art-label{position:absolute;top:17px;left:18px;font: .65rem 'DM Mono',monospace;letter-spacing:.1em;color:#cbd5e1}.project-content{padding:25px}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--subtle);font-size:.72rem;font-weight:700}.project-status{color:var(--green);background:color-mix(in srgb,var(--green) 10%,transparent);padding:5px 8px;border-radius:7px}.status-progress{color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 10%,transparent)}.project-content h3{font-size:1.25rem;margin:17px 0 9px}.project-content>p{color:var(--muted);font-size:.86rem}.tag-list{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.tag-list span{padding:5px 9px;background:var(--bg-alt);border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:.68rem;font-weight:700}.project-links{display:flex;gap:20px;flex-wrap:wrap;padding-top:15px;border-top:1px solid var(--line);font-size:.8rem;font-weight:800}.project-links a:hover{color:var(--accent-2)}.project-footnote{font-size:.76rem!important;margin-bottom:0}
.showcase-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.filter-button{padding:8px 13px;border-radius:9px;border:1px solid var(--line);background:var(--panel);color:var(--muted);cursor:pointer;font-size:.78rem;font-weight:800}.filter-button:hover,.filter-button.active{background:var(--accent);border-color:var(--accent);color:#07101e}.showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.showcase-card{min-width:0;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:16px}.showcase-card[hidden]{display:none}.showcase-media{display:block;width:100%;max-height:260px;object-fit:cover;background:var(--bg-alt)}.showcase-card iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.showcase-card audio,.showcase-card video{width:100%;display:block}.showcase-body{padding:19px}.showcase-type{font: .66rem 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2)}.showcase-body h3{font-size:1rem;margin:8px 0}.showcase-body p{color:var(--muted);font-size:.83rem;margin:0 0 10px}.showcase-points{padding-left:18px;margin:10px 0 0;color:var(--muted);font-size:.8rem}.showcase-empty{grid-column:1/-1;padding:26px;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.contact-copy{max-width:470px;color:var(--muted);margin:24px 0 28px}.contact-card{padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.contact-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:var(--bg-alt);color:var(--accent-2);font-size:1.3rem}.contact-label{margin:18px 0 6px;color:var(--subtle);font: .68rem 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase}.contact-card h3{margin:0 0 4px}.contact-card p:not(.contact-label){color:var(--muted);font-size:.86rem}.text-link{display:inline-block;overflow-wrap:anywhere;color:var(--accent-2);font-size:.8rem;font-weight:700}.contact-divider{height:1px;background:var(--line);margin:23px 0}.site-footer{border-top:1px solid var(--line);padding:25px 0}.footer-inner{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.footer-inner p{margin:0;color:var(--subtle);font-size:.75rem}.footer-inner small{margin-left:auto;color:var(--subtle);font-size:.7rem}.back-top{margin-left:auto;font-size:.75rem;color:var(--muted)}.back-top:hover{color:var(--accent-2)}.noscript-message{padding:15px;text-align:center;background:var(--panel);color:var(--text)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:900px){.section{padding:84px 0}.hero{padding-top:65px}.hero-grid{grid-template-columns:1fr;gap:20px}.hero-copy{max-width:700px}.hero-visual{min-height:360px}.hero-bottom{margin-top:20px}.skills-grid{grid-template-columns:repeat(2,1fr)}.section-heading-row{align-items:start;flex-direction:column;gap:18px}.section-note{max-width:600px}.about-grid{gap:25px 35px}.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{gap:35px}}
@media(max-width:640px){.container{width:min(100% - 32px,var(--container))}.nav{height:68px}.menu-toggle{display:block}.nav-links{position:absolute;top:68px;left:0;right:0;display:none;align-items:stretch;gap:0;padding:10px 16px 18px;background:var(--bg);border-bottom:1px solid var(--line)}.nav-links.open{display:flex;flex-direction:column}.nav-links>a{padding:12px 8px;border-bottom:1px solid var(--line)}.theme-toggle{margin-top:12px;width:100%}.hero{padding-top:55px}.hero-grid{min-height:unset}.hero h1{font-size:clamp(2.55rem,12vw,3.8rem)}.hero-intro{font-size:.97rem}.hero-visual{min-height:320px}.orbit-one{width:300px;height:250px}.orbit-two{width:240px;height:320px}.code-window{width:min(100%,350px)}.code-lines{font-size:.64rem;padding-inline:12px}.floating-badge{font-size:.65rem;padding:9px 10px}.badge-top{right:-2px;top:15px}.badge-bottom{left:-2px;bottom:20px}.hero-bottom{font-size:.56rem}.section{padding:70px 0}.section-heading{margin-bottom:32px}.section-heading h2{font-size:2.3rem}.about-grid{grid-template-columns:1fr;gap:18px}.about-lead .large-copy{font-size:1.15rem}.skills-grid{gap:10px}.skill-card{padding:16px 13px}.skill-card p{font-size:.74rem;min-height:60px}.skill-status{font-size:.6rem}.projects-grid{grid-template-columns:1fr}.project-art{height:210px}.project-content{padding:20px}.showcase-grid{grid-template-columns:1fr}.showcase-filters{gap:6px}.filter-button{font-size:.7rem;padding:7px 10px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-card{padding:23px}.footer-inner{gap:14px}.footer-inner p{order:3;flex-basis:100%}.footer-inner small{margin-left:auto}.back-top{margin-left:auto}}
@media(max-width:380px){.skills-grid{grid-template-columns:1fr}.skill-card p{min-height:0}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}}


/* Elias's profile photo */
.hero-visual{position:relative;min-height:390px;display:flex;align-items:center;justify-content:center;padding:20px;}
.profile-photo{display:block;width:min(100%,360px);aspect-ratio:3/4;object-fit:cover;object-position:center 22%;border-radius:28px;border:1px solid rgba(103,232,249,.45);box-shadow:0 24px 65px rgba(0,0,0,.32),0 0 0 8px rgba(96,165,250,.07);position:relative;z-index:2;}
@media(max-width:900px){.hero-visual{min-height:unset;padding:10px 0 25px}.profile-photo{width:min(78vw,340px);}}
@media(max-width:640px){.hero-visual{min-height:unset;padding:8px 0 22px}.profile-photo{width:min(78vw,300px);border-radius:22px;}}
